1.需求
unity生成AndroidApk,只能首次啟動啟動,且后續關閉后重啟不再啟動。
在Manifest文件中如下設置:android:priority設置較高是為了保證在其他launcher前啟動。
<intent-filter android:priority="2000"> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.HOME" /> <category android:name="android.intent.category.DEFAULT" /> </intent-filter>
public void DisableSetupWizard() { const int COMPONENT_ENABLED_STATE_DISABLED = 2; const int DONT_KILL_APP = 1; AndroidJavaClass unityPlayerClass = new AndroidJavaClass("com.unity3d.player.UnityPlayer"); AndroidJavaObject currentActivity = unityPlayerClass.GetStatic<AndroidJavaObject>("currentActivity"); AndroidJavaObject pm = currentActivity.Call<AndroidJavaObject>("getPackageManager"); AndroidJavaObject component = new AndroidJavaObject("android.content.ComponentName", "包名", "類名"); pm.Call("setComponentEnabledSetting", component, COMPONENT_ENABLED_STATE_DISABLED, DONT_KILL_APP); }