即使已安装,我的应用程序也没有出现在我的应用程序抽屉中

时间:2012-09-19 16:42:11

标签: android debugging manifest drawer

为什么该应用出现在应用抽屉中?它在App Manager中说它已安装,但我似乎无法打开实际的应用程序,因为它不在应用程序抽屉中。一旦安装完毕,它就不会自动打开它。

当我选择在手机上运行时(这是在Jellybean上),这就是说的。当我将它安装到模拟器时它会说同样的事情。

    [2012-09-19 16:20:24 - TheForeverAloneQuiz] Performing sync
    [2012-09-19 16:20:24 - TheForeverAloneQuiz] Automatic Target Mode: Several compatible targets. Please select a target device.
    [2012-09-19 16:20:28 - TheForeverAloneQuiz] Uploading TheForeverAloneQuiz.apk onto device '001988a8094d8e'
    [2012-09-19 16:20:28 - TheForeverAloneQuiz] Installing TheForeverAloneQuiz.apk...
    [2012-09-19 16:20:31 - TheForeverAloneQuiz] Success!
    [2012-09-19 16:20:31 - TheForeverAloneQuiz] /TheForeverAloneQuiz/bin/TheForeverAloneQuiz.apk installed on device
    [2012-09-19 16:20:31 - TheForeverAloneQuiz] Done!

这是Android清单。

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.mikenning.foreveralonequiz"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="15" />

    <application
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@android:style/Theme.Light.NoTitleBar" >
        <activity
            android:name=".Introduction"
            android:label="@string/title_activity_introduction" >
            <intent-filter>
                <action android:name="android.intent.action.INTRO" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity
            android:name=".QuestionOne"
            android:label="@string/title_activity_introduction" >
            <intent-filter>
                <action android:name="android.intent.action.QUESTIONONE" />

                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>
        <activity
            android:name=".Result"
            android:label="@string/title_activity_introduction" >
            <intent-filter>
                <action android:name="android.intent.action.RESULTS" />

                <category android:name="android.intent.category.DEFAULT" />         
            </intent-filter>
        </activity>
    </application>

</manifest>

我做错了什么?

SIDENOTE 我也会收到错误消息,说我不需要获得分类为&#39; DEFAULT&#39;的活动的许可。这可能与它有关吗?我需要在我的一个clases中使用startActivity(),所以它真的不是必需的吗?

2 个答案:

答案 0 :(得分:4)

我假设介绍是你的第一个活动。您需要向其添加其他操作,如下面的代码所示:

    <activity
        android:name=".Introduction"
        android:label="@string/title_activity_introduction" >
        <intent-filter>
            <action android:name="android.intent.action.INTRO" />
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

答案 1 :(得分:0)

我知道这是一个已解决的问题,但是该解决方案对我不起作用,我想在这里分享我的解决方案。

我正在尝试为我的应用添加深层链接支持,并且在documentation

<intent-filter android:label="@string/filter_view_http_gizmos">
        <action android:name="android.intent.action.VIEW" />
        <category android:name="android.intent.category.DEFAULT" />
        <category android:name="android.intent.category.BROWSABLE" />
        <data android:scheme="gizmosexample"/>
</intent-filter>

我将这些意图过滤器添加到了启动器活动中,并且在应用程序抽屉停止在启动器中显示应用程序图标之后。

因此,如果以上@RaghavSood's solution无效,请尝试从启动器活动的过滤器中删除这些过滤器或其他任何自定义过滤器。