应用程序图标未显示在设备上的程序列表中

sup*_*610 2 android intentfilter android-intent

我工作的一个Android应用程序,并没有任何问题运行它在我的HTC不可思议.然而,该图标将不会在我的程序列表中显示出来.我只能从最近的应用程序和已安装的应用程序列表中找到它(它显示在Downloaded下).有什么建议?这是我的AndroidManifest.xml:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.xxxxx.xxxxx" android:versionCode="1"
android:versionName="1.0">

<uses-sdk android:minSdkVersion="8" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

<application android:icon="@drawable/ic_launcher"
    android:label="@string/app_name" android:debuggable="true">
    <activity android:name=".XxxXxxDroidActivity"
        android:label="@string/app_name" android:theme="@android:style/Theme.Black.NoTitleBar">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <action android:name="android.intent.action.MEDIA_MOUNTED" />
            <data android:scheme="file" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity android:name=".FileManagerActivity"
        android:theme="@android:style/Theme.Black.NoTitleBar"></activity>
</application>
Run Code Online (Sandbox Code Playgroud)

解决这个问题的任何建议总是涉及行的存在<intent-filter>,但是Eclipse会自动添加它们,它们对我来说没有任何区别.

zon*_*abi 7

有这个相同的问题,并发现一个警告是在主活动标签上的这个正确的意图:

<intent-filter>
    <action android:name="android.intent.action.MAIN" />
    <category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
Run Code Online (Sandbox Code Playgroud)

必须在自己的意图过滤器.您可能在主活动的意图过滤器中有其他项目,如果是这样,请将其余项目分开到其下方的单独的intent过滤器标记中.把MAIN和LAUNCHER放在一起.

很多关于这个问题的答案似乎都错过了这一点.

希望能帮助到你!


Luk*_*rog 6

在你的清单中,为该类XxxXxxDroidActivity添加另一个intent-filter:

    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
Run Code Online (Sandbox Code Playgroud)