This is a collection of tips I've accumulated during my experience of porting iOS apps to Android. It accompanied a talk i gave at openMIC#16 in Exeter, UK on 15 Feb 2013
3. Porting?
Port [pohrt] Vb
To translate software to run on a different
computer and/or operating system.
Monday, 18 February 13
4. Porting?
Port [pohrt] Vb
To rewrite an application so it works on a
different platform, using some common
assets where possible
Monday, 18 February 13
22. Style: UITableView vs LinearLayout
•No rounded corners
•No lines to the edge!
•No chevrons
•Accordions? Hmm...
Monday, 18 February 13
23. Style: UITableView vs ListView
Separate each row
--or--
Put them in a
scrolling rounded
window
Monday, 18 February 13
24. Style: 9Patch images
http://weblookandfeel.com/nine-patch-editor/
iOS5 equivalent:
cap insets
Monday, 18 February 13
25. Style: 9Patch images
http://weblookandfeel.com/nine-patch-editor/
Monday, 18 February 13
26. Style: Button states
In iOS you get lovely
blueness for free
No free lunch for
android, need
several states for
all buttons
Monday, 18 February 13
27. Style: Icons
http://developer.android.com/guide/practices/ui_guidelines/icon_design_launcher.html
Tip: Android tablets icons come from the “next bucket
up” e.g. the Nexus 10 is an xhdpi device, but will use
icons from the xxhdpi bucket
Monday, 18 February 13
28. Style: Switch Buttons
Not supported by ABS or
HoloEverywhere (yet)
Pretty easy to do with
images (extend
CompoundButton or use an
ImageView)
Monday, 18 February 13
29. Style: Fonts
Can use TrueType fonts
(like iOS5)
Not straightforward...
But do you really need
them....?
Monday, 18 February 13
41. Responsive Design
Do Use:
•LinearLayout, RelativeLayout
•layout_weight, match_parent, wrap_content
•dps for measurements, sp for fonts
Do not use:
•AbsoluteLayout
•px for interface measurements
•dp for fonts
(sp takes user font size pref into account)
Monday, 18 February 13
42. Testing & Distribution
iPhone Android
Type Simulator Emulator
Quicker, not as suitable for Slower, more
Suitability debugging, esp multi-
threaded accurate
Provisioning Share a link to
Beta Testing
(doh!) APK
Up to 50mb
Binary Size Up to 2GB +2 x 2GB extension packs
Monday, 18 February 13
43. Don’t forget - Android
does things iOS doesn’t!
Monday, 18 February 13