4. In 2 years we’ve written
6 720 353
Lines of Code using Xamarin
5. Touch Instinct
• Mobile outsourcing powered by Xamarin
• Superb looking mobile apps
• 2.5 years of experience with Xamarin
• Always custom and complex UI
• 40 geeks doing some crazy mobile stuff
9. Xamarin Components
• Simplify and speedup development
• Use the power of professionals
• Available right from Xamarin Studio
• Distribute and sell your own components
• Visit components.xamarin.com
36. public static void Start<CustomSettings> (Context context, Mode mode)
where CustomSettings : DefaultSettings, new()
{
var settingsType = typeof(CustomSettings);
var intent = new Intent (context, typeof(LockerActivity));
intent.PutExtra (ModeKey, (int)mode);
intent.PutExtra (SettingsClassNameKey, settingsType.AssemblyQualifiedName);
intent.SetFlags (ActivityFlags.NoHistory);
context.StartActivity (intent);
}
Simply passing an object to Android Activity
37. protected override void OnCreate (Bundle bundle)
{
// …
if (!(Intent.HasExtra (ModeKey) && Intent.HasExtra (SettingsClassNameKey)))
throw new ArgumentException ("LockerActivity needs appropriate Intent to be started.");
mode = (Mode)Intent.GetIntExtra (ModeKey, (int)Mode.Activate);
var settingsClassName = Intent.GetStringExtra (SettingsClassNameKey);
var settings = Activator.CreateInstance (Type.GetType (settingsClassName)) as DefaultSettings;
if (settings == null)
throw new ArgumentException ("LockerActivity settings must be a subclass of
DefaultSettings");
// …
}
40. Be aware of memory usage
• Presence of Garbage Collector doesn’t mean
you don’t have to think about memory
• Each time you create an object consider
reusing old one
• GREFs are your enemy. Dealing with 2 GCs in
Android is fun.
41. Make it shine
• Good description
• Nice screenshots
• Easy to read Getting Started
• All this is must have
42.
43.
44.
45.
46.
47.
48. What’s next
• More components
• Custom app themes
• More UI customization for components
• Whatever you would request
49. We need your feedback
Have any idea or comment?
Please, send me an email to
ab@touchinstinct.com
or
visit components.xamarin.com