We are developing a cross platform app on a PCL, but for the time being we are only using android devices for testing.
Our concern is that its taking about 6 to 8 seconds (depending on which device we test it) to start the app, which is very slow.
After placing a few breakpoints we saw that the timing is consumed pretty evenly.
We did notice this particular parts took longer:
- 1s before reaching onCreate() on MainActivity (there's a splash screen before which only has one image and a background color)
- 1s on
base.OnCreate(bundle);
- 1s on
global::Xamarin.Forms.Forms.Init(this, bundle);
- 1.5s on
Page mainPage = new LogScreen();
(creating the main page to then set it as main navigation page).
I'll put together all the solutions we found for this, so its all in one place.
One of the answers linked this post, which was very useful.
Besides that we also did the following things:
global::Xamarin.Forms.Forms.SetFlags("FastRenderers_Experimental");
onMainActivity.OnCreate()
method, beforeglobal::Xamarin.Forms.Forms.Init(this, bundle);