所以几天前,我用自己的启动器(基于Nexus 7 2013,android 5.1.1)为我的定制安卓车载平板电脑构建了一个更新。我添加了一些新功能和一些修复程序(与导致问题的活动无关),我意外地添加了设备管理权限和安装包权限。
在平板电脑上安装更新后,当点击应该启动外部应用程序(如Spotify或Maps)的东西时,该设备总是打开Android for work应用程序。我认为这可能是有这些权限的东西,我删除了它们,并重新安装了新版本的应用程序(没有更新!),但它不起作用,它仍然启动了Android for work应用程序。
然后我卸载了Android for work应用程序,现在谷歌现在的应用程序启动了。卸载后,设置应用程序现在启动?!
有人知道为什么会发生这种情况吗?我能做些什么来摆脱它?
附言:这是我用来启动一个应用程序的代码,它的包名是百分之百正确的(不可能有故障):
pkg1 = prefs.getString("dash_app_music", null);
....
private View.OnClickListener clickhandler = new View.OnClickListener() {
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.tv_action_1:
Intent i = pm.getLaunchIntentForPackage(pkg1);
startActivity(i);
break;
case R.id.tv_action_2:
Intent i2 = pm.getLaunchIntentForPackage(pkg2);
startActivity(i2);
break;
case R.id.tv_back:
onBackPressed();
break;
}
}
};
好的,由于某种原因,获取意图的packagemanager的包名称是空的,因此android启动设置应用程序作为后备(?)。