Android程序安装后应用图标不显示

    xiaoxiao2021-12-14  23

    本文主要介绍Android应用程序安装后图标不显示的几个可能原因。以便以后自己查阅

    1、AndroidManifest中application元素属性设置问题

    属性设置错误

    <application android:icon="@drawable/icon"android:label="@string/app_nae">

    设置图标为icon,而上面的icon资源文件不存在 解决方法:添加icon资源文件

    2、AndroidManifest中 没有activity设置android.intent.category.LAUNCHER category或android.intent.action.MAIN action

    AndroidManifest没有任何activity设置了

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

    在运行时候你会发现如下提示信息,表示异步执行 [2012-03-25 ……] No Launcher activity found! [2012-03-25 ……] The launch will only sync the application package on the device! 而程序已经安装在列表中,但并没有图标而且也没有将android.intent.action.MAIN属性的activity执行显示在屏幕最前端。 解决方法:在主activity中添加这两个属性

    3、main intent-filter同时配置了不同种类的action和data,配置如下:

    <activity android:name=".AccountManageActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> <data android:scheme="aone" android:host="AccountManageActivity" /> </intent-filter> </activity>

    有网友说这种方式无法启动,但经过自己测试能启动只是不会显示图标而已

    解决方法:分为两个intent-filter,如下

    <activity android:name=".AccountManageActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> <intent-filter> <data android:scheme="aone" android:host="AccountManageActivity" /> </intent-filter> </activity>

    原因为intent-filter表示activity接受怎样的intent,定义在一个intent-filter中的条件必须都满足才能按照该intent-filter启动,否则按照其他intent-filter启动。而以上明显是两类启动方式,所以必须分开。通过这个介绍可以知道其他的action、category、data冲突也有可能导致这个问题

    转载请注明原文地址: https://ju.6miu.com/read-964754.html

    最新回复(0)