问题描述
我们遇到一个非常奇怪的情况,当我们在使用VPN的工作资料中的受管设备上部署Android应用程序的初始屏幕时,却没有出现,但是在同一设备上的个人资料中一切正常。是否有人有相同的问题或建议可能导致这种行为?
出于完整性考虑:使用Titanium时会发生相同或相似的错误,其描述如下:https://jira.appcelerator.org/browse/TIMOB-26872
解决方法
我们使用XML将初始屏幕设置为主启动器活动的“ windowBackground”样式。操作系统在应用程序启动时显示“ windowBackground”,但在我们的示例中,Android Enterprise在沙盒环境中启动了该应用程序,而“ windowBackground”图像被忽略。因此,这似乎是Android Enterprise的问题。
解决方案:
- 创建一个单独的SplashActivity设置MainLauncher = true(确保没有其他活动将MainLauncher设置为true)。
- 为SplashActivity创建SplashLayout.xml。
- 在base.OnCreate(savedInstanceState)之后的SplashActivity的OnCreate中, 设置活动的内容:SetContentView(Resource.Layout.SplashLayout);
- 启动MainActivity:RunOnUiThread(()=> StartActivity(typeof(MainActivity)));
- 在StartActivity调用后,根据您的需要进行延迟。
- 在延迟后致电Finish(),因为用户将无法通过单击“后退”按钮返回到初始屏幕。