如何从springboard中删除应用程序图标但我不想卸载,只需从springboard中删除图标,此应用程序将从另一个应用程序启动。简而言之,我想做另一个像这样的跳板,并从那里启动应用程序,而不是从其他任何地方。这个是可能的吗?
发布于 2013-07-09 12:24:02
在应用程序的AndroidMainfest.xml中,删除您不希望拥有启动器的活动的以下行。
<category android:name="android.intent.category.LAUNCHER" />并将android.intent.action.MAIN操作更改为特定于您的应用程序的内容
<action android:name="android.intent.action.MAIN" />例如,可以将其更改为以下内容,以表示自定义意图操作:
<action android:name="com.example.action.MAIN" />现在,您应该能够使用如下命令从另一个应用程序启动此应用程序:
Intent intent = new Intent("com.example.action.MAIN");
currentActivity.startActivity(intent);更多信息请点击此处:http://developer.android.com/guide/components/intents-filters.html
发布于 2013-07-09 12:30:38
要从springboard中删除应用程序,您可以尝试执行以下操作:
PackageManager packageManager = context.getPackageManager();
ComponentName componentName = new ComponentName(context,LauncherActivity.class);
packageManager.setComponentEnabledSetting(componentName,
PackageManager.COMPONENT_ENABLED_STATE_DISABLED,PackageManager.DONT_KILL_APP);现在,要从另一个应用程序启动您的应用程序,可以执行以下步骤:
1.使用action=MAIN和category=LAUNCHER创建意图
2.使用context.getPackageManager从当前上下文获取PackageManager
3.packageManager.queryIntentActivity(,0),其中intent使用category=LAUNCHER、action=MAIN或packageManager.resolveActivity(,0)来获取具有主/启动器的第一个活动
4.获取您感兴趣的ActivityInfo
5.从ActivityInfo获取packageName和名称
6.最后,使用category=LAUNCHER,action=MAIN,componentName = new ComponentName(packageName,name)和setFlags(Intent.FLAG_ACTIVITY_NEW_TASK)创建另一个意图
7.最后,context.startActivity(newIntent)
https://stackoverflow.com/questions/17539529
复制相似问题