本帖最后由 听鬼哥说故事 于 2014-12-17 11:58 编辑
图/文 听鬼哥说故事
有时候遇到的游戏,不知道是游戏公司问题,还是分发渠道后的问题,游戏安装后竟然会不显示图标。当然,这对于病毒和木马来说是很重要的,也是很好的隐藏手段,不过对于正常应用和游戏来说就需要处理这个问题了。 遇到这个问题,有几种可能:
1.游戏没有设置icon 2.游戏没有设置主类 3.主类里面有其他data或filter影响
下面来进行测试: 一个正常的AndroidManifest.xml文件是这个样子的,如下图:
第一钟方式:
我们在程序开发中将icon删除掉,程序会正常运行,而图标变为系统的小机器人。如下: <application android:allowBackup="true" android:icon="@drawable/ggg" android:label="@string/app_name" android:theme="@style/AppTheme" > 于是,把Eclipse工程中bin目录下的apk来导出来,反编译它,在xml文件中将icon设置的名字修改,回编译程序会报错如下:
说明这种方式是不可行的,也就是我们遇到的没有图标的游戏或应用,用这种方式无法还原。
第二种方式:
我们先删除掉主类的这个字段<category android:name="android.intent.category.LAUNCHER" />在进行安装的时候,在控制台会提示:
然后程序没有启动,无图标。接着,我们恢复这个字段,然后删除Main字段:效果同上面效果一样,无图标。这种情况一般我们是会遇到的,尤其是遇到分渠道的游戏或者应用,使用他们自己的打包工具时,可能会遇到,这里需要注意。
第三种方式:
我们在主类的里面添加如下代码
[HTML] 纯文本查看 复制代码
<activity android:name="com.example.testicon.MainActivity" android:label="@string/app_name" > <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>
Eclipse运行程序,发现程序会启动,而手机界面却没有图标产生。在自己开发程序,或者是反编译程序的时候,出现的这种情况是比较多的,也是比较常见的,而且这钟情况,不熟悉开发知识的新同学可能不会了解这个,而把问题归结于其他情况,这点一定要注意。
|