mog*_*tou 3 android android-activity
我愿意通过以下代码从另一个活动中禁用一个活动,但这会导致一个问题:杀死当前的应用程序。SDK 版本是 4.0 。
@Override
public void onCreate(Bundle savedInstanceState) {
PackageManager pm = getPackageManager();
pm.setComponentEnabledSetting(newComponentName(this,
"com.xxx.launcher.desktop.testActivity"),
PackageManager.COMPONENT_ENABLED_STATE_DISABLED,
PackageManager.DONT_KILL_APP);
Run Code Online (Sandbox Code Playgroud)
}
是不是缺少什么设置?
你应该看看http://developer.android.com/reference/android/content/pm/PackageManager.html#DONT_KILL_APP
使用时必须小心一点PackageManager.DONT_KILL_APP,因为它可能导致未定义的行为。特别是如果 Activity 试图禁用自身。如果您针对另一个活动应该没问题,但我猜您要清除的活动在
看起来您的呼叫ComponentName不正确。您可能想要调用new ComponentName(this.getApplicationContext(), testActivity.class). 或者您可以使用new ComponentName("com.xxx.launcher.desktop","com.xxx.launcher.desktop.testActivity"),其中第一个参数是 AndroidManifest.xml 文件中的包,第二个参数是ComponentName. 有关设置 ComponentName 的信息,请查看以下 SO 问题:何时在 Android 中为 ComponentName 使用哪个构造函数?想要查询更多的信息。
| 归档时间: |
|
| 查看次数: |
3209 次 |
| 最近记录: |