我知道这是一个非常古老的问题,但是使用新的Android API(目前我正在使用API 19+)我们能做到吗?
我无法删除:
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
来自清单文件,因为Android Studio无法编译应用程序:
找不到默认活动
更新:谢谢大家,我决定以编程方式完成
答案 0 :(得分:3)
因为Android工作室不会编译应用
是的,它会的。构建&gt;构建APK工作得很好。
Android Studio不会运行该应用,因为它确实知道如何运行这样的应用,但这并不妨碍您编译应用并生成APK。
没有应用启动器图标的应用
自Android 3.1以来,这种情况没有发生重大变化。欢迎您编写没有启动器图标的应用程序。除了一些特殊情况之外,该应用程序将毫无用处,因为它的代码都不会运行。
答案 1 :(得分:1)
Nope。这是必不可少的,因为这将指示首先显示哪个活动。我认为你可以删除android.intent.category.LAUNCHER。
How to launch an Android app without "android.intent.category.LAUNCHER"
中讨论了类似的案例答案 2 :(得分:1)
您应该可以从该项目创建APK。使用菜单Build&gt;从命令行构建APK或使用gradle。
在AS上安装和运行设备是失败的,因为没有什么可以启动的。
如果您要从启动器中删除该应用,则可以通过setComponentEnabledSetting()
上的PackageManager
调用以编程方式执行此操作。
答案 3 :(得分:1)
我正在创建一个仅在后台运行的应用程序。我遇到了同样的问题,不得不创建一个只执行finish()
方法的活动。
所以我发现了这个问题:( https://stackoverflow.com/a/16603708/7548147),你所要做的就是(在Android Studio中),转到 RUN - &gt;编辑配置...并启动选项 - &gt;启动:不选择任何选项。
在此之后,您将能够删除Mainfest中的代码