6

我已经看到谷歌应用程序上有一些 GPS 应用程序,安装后,该应用程序将没有图标显示,但会在后台运行服务。

我将如何实现这一目标?

4

4 回答 4

6

要从启动器中删除应用程序,请不要将这些行与主活动放在一起 AndroidManifest.xml

<intent-filter>
  <action android:name="android.intent.action.MAIN" />
  <category android:name="android.intent.category.LAUNCHER" />
</intent-filter>

如果您想以编程方式将其删除,则使用PackageManager.setComponentEnabledSetting将其从启动器中删除:

  ComponentName componentToDisable =
  new ComponentName("com.xxx.apptodisable",
  "com.xxx.apptodisable.LauncherActivity");

  getPackageManager().setComponentEnabledSetting(
  componentToDisable,
  PackageManager.COMPONENT_ENABLED_STATE_DISABLED,
  PackageManager.DONT_KILL_APP);
于 2012-12-05T02:59:36.123 回答
4

使用此代码

PackageManager p = getApplicationContext().getPackageManager(); 
p.setComponentEnabledSetting(getComponentName(),PackageManager.COMPONENT_ENABLED_STATE_DISABLED, PackageManager.DONT_KILL_APP);
于 2012-12-05T02:58:34.987 回答
2

从启动器中隐藏应用程序图标的最佳方法可以<category android:name="android.intent.category.LEANBACK_LAUNCHER"/>在清单 MainActivity 中使用

  <activity android:name=".MainActivity">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LEANBACK_LAUNCHER"/>
        </intent-filter>
    </activity>

还添加使用功能

<uses-feature
    android:name="android.software.leanback"
    android:required="true" />
于 2018-03-21T05:30:48.437 回答
0

只是不要使用android.intent.category.LAUNCHER类别意图过滤器实现 Activity,并且服务接收启动广播。

于 2012-12-05T02:56:58.453 回答