为什么我的活动在Android"所有应用"中都不可见。

时间:2015-06-15 07:58:08

标签: android android-activity splash

我正在尝试创建一个启动画面活动,它会在真实应用启动之前执行一些预先要求的网络调用。但是,应用程序图标不显示在"所有应用程序"在android上。你能帮助我吗?以下是与活动相关的清单代码:

<activity
        android:name=".SplashActivity"
        android:label="@string/app_name"
        android:noHistory="true">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <action android:name="android.intent.action.VIEW" />

            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.LAUNCHER" />

            <data android:mimeType="application/pdf" />
            <data android:mimeType="text/plain" />
            <data android:mimeType="application/rtf" />
            <data android:mimeType="image/jpeg" />
            <data android:mimeType="image/png" />
            <data android:mimeType="image/tiff" />
            <data android:mimeType="image/bmp" />
            <data android:mimeType="image/gif" />
            <data android:mimeType="application/postscript" />
            <data android:mimeType="application/msword" />
            <data android:mimeType="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" />
            <data android:mimeType="application/vnd.ms-powerpoint" />
            <data android:mimeType="application/vnd.ms-excel" />
            <data android:mimeType="application/vnd.openxmlformats-officedocument.wordprocessingml.document" />
        </intent-filter>

    </activity>

清单中的完整应用程序代码如下所示:

<application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/Theme.AppCompat.Light.NoActionBar" >
    <meta-data
        android:name="com.google.android.gms.version"
        android:value="@integer/google_play_services_version" />
    <meta-data
        android:name="com.google.android.geo.API_KEY"
        android:value="AIzaSyD1e3EbexMClXfkyULNViJlOPgeubzZdfI" />

    <activity
        android:name=".MainActivity"
        android:label="@string/app_name"
        android:screenOrientation="sensorPortrait" >
    </activity>
    <activity
        android:name=".PrintJobActivity"
        android:label="@string/app_name"
        android:screenOrientation="sensorPortrait" >
    </activity>
    <activity
        android:name=".SelectPrinterOptionsActivity"
        android:label="@string/title_activity_select_printer_options"
        android:launchMode="singleTop"
        android:parentActivityName=".PrintJobActivity" >
        <meta-data
            android:name="android.support.PARENT_ACTIVITY"
            android:value=".PrintJobActivity" />
    </activity>
    <activity
        android:name=".PrintRangeActivity"
        android:label="@string/title_activity_print_range"
        android:parentActivityName=".PrintJobActivity" >
        <meta-data
            android:name="android.support.PARENT_ACTIVITY"
            android:value=".PrintJobActivity" />
    </activity>
    <activity
        android:name=".SelectPrinterMapActivity"
        android:label="@string/title_activity_select_printer_map"
        android:parentActivityName=".SelectPrinterOptionsActivity" >
        <meta-data
            android:name="android.support.PARENT_ACTIVITY"
            android:value=".SelectPrinterOptionsActivity" />
    </activity>
    <activity
        android:name=".PrintPreviewActivity"
        android:label="@string/title_activity_print_preview"
        android:parentActivityName=".SelectPrinterOptionsActivity" >
        <meta-data
            android:name="android.support.PARENT_ACTIVITY"
            android:value=".SelectPrinterOptionsActivity" />
    </activity>

    <service
        android:name=".network.NetworkService"
        android:exported="false" >
    </service>

    <activity
        android:name=".OrderInfoActivity"
        android:label="@string/title_activity_order_info_activitty" >
    </activity>
    <activity
        android:name=".OrderDetailsActivity"
        android:label="@string/title_activity_order_details" >
    </activity>
    <activity
        android:name=".TermsAndConditionsActivity"
        android:label="@string/title_activity_terms_and_conditions" >
    </activity>
    <activity
        android:name=".SplashActivity"
        android:label="@string/app_name"
        android:noHistory="true"
        android:logo="@mipmap/ic_launcher">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <action android:name="android.intent.action.VIEW" />

            <category android:name="android.intent.category.LAUNCHER" />

            <data android:mimeType="application/pdf" />
            <data android:mimeType="text/plain" />
            <data android:mimeType="application/rtf" />
            <data android:mimeType="image/jpeg" />
            <data android:mimeType="image/png" />
            <data android:mimeType="image/tiff" />
            <data android:mimeType="image/bmp" />
            <data android:mimeType="image/gif" />
            <data android:mimeType="application/postscript" />
            <data android:mimeType="application/msword" />
            <data android:mimeType="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" />
            <data android:mimeType="application/vnd.ms-powerpoint" />
            <data android:mimeType="application/vnd.ms-excel" />
            <data android:mimeType="application/vnd.openxmlformats-officedocument.wordprocessingml.document" />
        </intent-filter>

    </activity>
</application>

2 个答案:

答案 0 :(得分:2)

您必须为每个操作创建单独的intent-filter

 <activity
    android:name=".SplashActivity"
    android:label="@string/app_name"
    android:noHistory="true">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
    <intent-filter>
        <action android:name="android.intent.action.VIEW" />
        <category android:name="android.intent.category.DEFAULT" />
        <data android:mimeType="application/pdf" />
        <data android:mimeType="text/plain" />
        <data android:mimeType="application/rtf" />
        <data android:mimeType="image/jpeg" />
        <data android:mimeType="image/png" />
        <data android:mimeType="image/tiff" />
        <data android:mimeType="image/bmp" />
        <data android:mimeType="image/gif" />
        <data android:mimeType="application/postscript" />
        <data android:mimeType="application/msword" />
        <data android:mimeType="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" />
        <data android:mimeType="application/vnd.ms-powerpoint" />
        <data android:mimeType="application/vnd.ms-excel" />
        <data android:mimeType="application/vnd.openxmlformats-officedocument.wordprocessingml.document" />
    </intent-filter>
</activity>

答案 1 :(得分:0)

你的 android:logo 或android:图标如上所示:

    android:name=".SplashActivity"
    android:label="@string/app_name"
    **android:logo="ic_luncher.png"**
    android:noHistory="true"