【发布时间】:2016-12-08 09:19:43
【问题描述】:
我一直在尝试使用 c# 统一隐藏应用程序图标。我尝试实现下面的android代码:
PackageManager p = getPackageManager();
ComponentName componentName = new ComponentName(this,com.apps.MainActivity.class); // activity which is first time open in manifiest file which is declare as <category android:name="android.intent.category.LAUNCHER" />
p.setComponentEnabledSetting(componentName,PackageManager.COMPONENT_ENABLED_STATE_DISABLED, PackageManager.DONT_KILL_APP);
所以,我的代码是:
AndroidJavaClass up = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
AndroidJavaObject ca = up.GetStatic<AndroidJavaObject>("currentActivity");
AndroidJavaObject packageManager = ca.Call<AndroidJavaObject>("getPackageManager");
AndroidJavaClass cn = new AndroidJavaClass ("android.content.ComponentName");
launchIntent = packageManager.Call<AndroidJavaObject>("getLaunchIntentForPackage",bundleId);
packageManager.Call<AndroidJavaObject>("setComponentEnabledSetting",cn,packageManager.Get<int>("COMPONENT_ENABLED_STATE_DISABLED"),packageManager.Get<int>("DONT_KILL_APP"));
ca.Call ("startActivity", launchIntent);
cn.Dispose ();
up.Dispose();
ca.Dispose();
packageManager.Dispose();
launchIntent.Dispose();
当我为 android 构建和运行时,指示 packagemanager 的行没有被调用。我在这里想念什么?请帮忙!
【问题讨论】:
标签: c# android unity3d package-managers