`

Android程序安装后图标不显示

 
阅读更多

本文主要介绍android应用程序安装后图标不显示的几个可能原因。

 

自己写的程序突然安装后图标不见了,在应用程序安装中能找到,但是桌面上就是没有图标,启动只能从最近列表中其中。。一般这种情况只会在服务类程序和测试程序中出现,因为不需要图标。

 

google无果,自己二分调试解决了,并测试了其他网友提供的其他会出错原因,大致总结如下:

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

属性设置错误

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

设置图标为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冲突也有可能导致这个问题

 

我本地是最后一个原因,调试n久,因为最开始写时没加data,这个时候图标已经创建,加完data之后图标仍然在,只不过是第一个创建好的,所以一直没发现,加了一些新功能原来的apk删除后,突然发现没图标了,一直以为是新加功能造成的。。。

 

 

分享到:
评论

相关推荐

    Android和IOS最全图标集合

    状态栏和动作图标则需要遵循Android的矢量图支持,以便在不同屏幕尺寸下自动缩放不失真。 对于iOS,图标同样需要多尺寸版本,包括iPhone、iPad、Apple Watch等不同设备及多种分辨率的要求。iOS 11引入了AppIcon资产...

    Android开发之APP安装后在桌面上不显示应用图标的解决方法

    本文通过详细的分析和解决方法,希望能够帮助开发者更好地理解Android activity相关属性设置技巧,解决应用图标不显示的问题。 五、扩展阅读 如果您想了解更多关于Android相关内容,可以查看以下专题: * ...

    9.0 10.0Launcher3设置app图标和hotseat图标为圆角图标

    在Android系统中,Launcher3是默认的主屏幕和应用程序抽屉管理器,它负责显示和管理手机上的应用快捷方式和小部件。随着Android版本的更新,界面设计也在不断进化,9.0和10.0版本引入了圆角图标的设计趋势,以提供...

    获取android设备已安装应用信息(包名、图标、应用名)

    本文将详细讲解如何通过编程方式获取Android设备上已安装应用的包名、应用名称和图标。 首先,我们需要了解Android系统的应用程序是如何组织的。每个应用程序都有一个唯一的包名(Package Name),它在整个Android...

    安卓service后台运行,自启动,隐藏安装图标

    总之,通过上述步骤,你可以创建一个能在后台运行、自启动且不显示图标的服务。然而,这样的功能应当谨慎使用,遵循最佳实践和用户隐私政策,以避免被系统限制或引起用户不满。在实际开发过程中,还应考虑电量和性能...

    android多个图标显示在桌面上

    在Android系统中,一个应用程序通常有一个主入口Activity,它的图标会出现在用户桌面上,供用户点击启动应用。然而,有时开发者可能希望为同一个应用创建多个入口点,以便提供不同的功能或者展示不同的界面,这就...

    android桌面应用程序

    Android 桌面应用程序是 Android 操作系统中的一种应用程序,负责管理和显示桌面图标、快捷方式、widget 等元素。学习 Android 桌面应用程序开发,可以帮助开发者更好地理解 Android 操作系统的工作机制,掌握桌面...

    android icon png图标大全

    1. **应用图标**:这是每个Android应用的核心图标,显示在主屏幕、应用列表和通知栏中,代表应用的品牌和功能。 2. **状态栏图标**:用于通知中心,表示应用程序的状态或提醒,如邮件、消息、电池状态等。 3. **...

    修改Launcher让图标不显示在桌面或者主菜单中

    通过上述方法,我们可以实现在Android 2.3系统中自定义Launcher,使某些应用的图标不显示在桌面上或主菜单中。虽然Android 4.0版本有细微区别,但核心思路相同。这种方法不仅可以用于个性化桌面布局,还可以帮助...

    android robot 应用图标精选

    在Android操作系统中,应用图标是用户界面的重要组成部分,它们不仅为用户提供视觉识别,还作为启动应用程序的入口。"Android Robot 应用图标精选"集合了各种各样的图标设计,适用于不同类型的Android应用,旨在提升...

    android开发程序安装

    至此,Eclipse中将显示Android图标,表示ADT已成功配置。 总结来说,Android开发程序的安装主要包括Java环境的搭建(JDK安装与环境变量配置)、Android SDK的安装(SDK Manager的配置)、Eclipse的安装与汉化以及...

    android studio安装方法

    2. 管理员权限:以管理员身份运行安装程序或启动Android Studio。右键点击图标,选择“以管理员身份运行”。 3. 更新系统:确保操作系统是最新的,有时候兼容性问题会导致软件运行不正常。 4. Java环境:Android ...

    Android隐藏桌面图标

    在Android系统中,通常应用程序的图标会出现在用户的主屏幕上,为用户提供快速启动应用的途径。然而,有时开发者可能需要在特定条件下隐藏应用的桌面图标,比如为了实现隐藏式的后台服务或者仅通过其他方式(如通知...

    获取手机已安装程序的名称图标信息

    在Android系统中,获取手机上已安装应用的名称和图标信息是常见的需求,这通常涉及到对设备上所有应用程序的遍历以及对应用元数据的访问。这个任务可以通过使用Android提供的`PackageManager`服务来实现。`...

    Android开发之系统信息【4】——获取Android已安装程序列表

    ### Android开发之系统信息【4】——获取Android已安装程序列表 #### 一、概述 在Android开发过程中,有时我们需要获取设备上的一些硬件信息或软件信息。例如,开发者可能会关心设备上的内存状况或是已安装的应用...

    实验1-Android开发环境与第一个Android程序.doc

    5. **实验分析和总结**:学生在完成上述步骤后,需要分析整个实验过程,比如安装配置过程中遇到的问题及其解决办法,以及在编写和运行HelloAndroid程序时的体验。此外,还需总结实验过程,如设置AVD的过程、调试技巧...

    Android开发,获取当前手机安装的所有应用、根据包名获取应用信息、获取当前应用程序的包名、获取程序 图标等关于安装在手机上的

    Android开发,获取当前手机安装的所有应用、根据包名获取应用信息、获取当前应用程序的包名、获取程序 图标、获取程序的版本号、获取程序的名字、获取程序的权限、获取程序的签名、获取当前包名的 SHA1、将获取到得...

    android launcher 日历图标显示日期.zip

    在Android系统中,Launcher是用户界面的核心组成部分,它充当了应用程序的启动器,允许用户启动已安装的应用程序、管理桌面小部件以及自定义主屏幕布局。"android launcher 日历图标显示日期.zip"这个压缩包文件可能...

    给Android的应用换个图标(桌面快捷图标)sShortcut

    在Android上,快捷方式是一种指向应用程序特定功能的接口,用户可以通过长按应用图标或通过启动器(Launcher)创建。在API 25及更高版本中,Android引入了动态快捷方式(Dynamic Shortcuts),允许开发者创建和管理...

    Android 4.0 小图标

    在Android操作系统中,小图标(或称为应用图标)是用户界面的重要组成部分,它们代表应用程序、功能或者状态。在Android 4.0(Ice Cream Sandwich,简称ICS)版本中,系统引入了一系列新的设计语言和视觉元素,其中...

Global site tag (gtag.js) - Google Analytics