当前位置:首页 > 手机 > 正文内容

解决Android关机后SD卡上的程序图标消失

lonhowe13年前 (2011-09-23)手机473

 说实话,这不能不算是Android的一个弊端,也怪Android最初考虑apk安装的时候考虑的不够充分完全。解决方法的前提是机子要有root权限,并且能用命令行(或者你在电脑上用adb工具也可以),我们要做的就是重启桌面。

 

  进入命令行,使用su获得root权限,然后执行ps命令,可以看到如下:

root      4451  1     101520 27376 ffffffff 00000000 S zygote
system    4458  4451  226680 37284 ffffffff 00000000 S system_server
app_48    4535  4451  137596 24608 ffffffff 00000000 S com.lge.android.cime
radio     4540  4451  147660 24908 ffffffff 00000000 S com.android.phone
app_54    4543  4451  167056 31740 ffffffff 00000000 S android.process.lghome
system    4545  4451  133820 20352 ffffffff 00000000 S com.android.settings

  但是桌面程序是哪个呢?这就真的依赖机子本身了,譬如我这个测试机是LG P503,对应的桌面程序是android.process.lghome,所以通过上面的ps命令结果可以看到它的进程号是4543(红色标出,当前行的第一个数字,记住,是第一个数字4543而不是第二个数字4451),于是执行:

#kill –9 4543

  此时不会重启机子,只用重新再去桌面就OK了。另外记住:上面如果kill过system_server的话,要重新执行ps命令获取桌面的进程号,因为重启后这些进程号都变了。

  如果你不是LG P503机器,你也可以查查看你的桌面程序是什么,如果是原生的系统,会有launcher的关键字,找找看,再或者找找其它看起来像的,就找进程号大于system_server的,如本例中,system_server的进程号是4458(红色标出),那么找所有第一个数字大于4458的kill看看,不用害怕,最多也就是重启一下手机,不会破坏手机的。成功后,记住后面的名字(如本例中的android.process.lghome),以后用得着的,说不定就这次就用得着,因为你在寻找过程中,可能kill掉了不该kill的进程,那么你再次重启后,直接kill这个桌面程序就OK。

  如果你实在难以找到桌面程序的进程(其实按照上面的方法每一个都试试,一定能找到的,我在考虑是不是写个简单的apk供大家简单使用呢?不过想必这个东西用过linux的都会,所以我就不卖弄了)。也可以尝试找出system_server的进程号(如果你能确定你的桌面程序,直接跳过这一步往下看),第一个数字4458就是,然后再执行kill命令:

#kill –9 4458

  然后就可以看到你的机子重启了,等启动完之后,如果图标都回来了,那就万事OK了。如果没有完全回来,那就只能用上面的方法了。

总结:

  方法其实很简单:获得桌面程序的进程号,杀掉它(它会自动重启),就得到了完整的图标。

原理分析

  android为了把应用程序装到sdcard上面,对每个安装在上面的应用都挂载了对应的目录。但是我们在手机启动之后,这些都还没完全挂载上,所以桌面根本访问不到它们,既然访问不到,自然图标就没有了(说到这里,如果android不仅把程序列表存起来,也把图标对应存起来估计就少了一些麻烦了,虽然存在程序删掉了但是图标没删的问题,但有什么问题呢?)。所以上面的动作就是为了让桌面程序重启一次。重启system_server的原因是因为桌面程序在每个机子上都不同,难以找到,而system_server都一样,如果能找到桌面程序的进程直接kill掉那是最好的了。因为此时sdcard已经挂载上了,那些应用程序也相继在挂载,但如果应用程序多,就不一定挂载完了,毕竟有一个过程的。

  至于网上说的是因为sd卡读写速度慢造成图标读不出来,那是浮云~~sd卡读写速度虽然慢,但不是造成这个问题的关键。祝各位能顺利解决问题。

  写这篇文章纯粹是因为博客太久没更新了,所以写写。

补充:

  如果你看到这个地方了,你估计要吐血了。。。因为经过继续摸索,发现一个更简单的方法:那就是利用任务管理器,将所有的应用程序关掉,那么这里面的应用程序就必定包括了桌面程序,从而达到了上面要关掉桌面程序的目的。这样你就不必自己去寻找桌面程序的进程号再去关掉它了。这里我用的是安卓优化大师,不过我想任何一个任务管理器或者程序管理器都能做到这一点吧,甚至Android自带的应用程序管理如果你愿意一个个试着关掉的话,也是可以办到的。

扫描二维码推送至手机访问。

版权声明:本文由IT之家发布,如需转载请注明出处。

本文链接:https://www.it678.com/post/110.html

分享给朋友:

“解决Android关机后SD卡上的程序图标消失” 的相关文章

微软Mango应用程序达3万,9月发布正式版SDK

8月24日消息,据国外媒体报道,目前已有约30000个手机应用程序可用于微软最新的 Windows Phone,这是继微软3月份宣布11500个可用应用程序以来的又一次迅速增长,但距离行业的领头羊位置尚有差距。对比其他手机平台,iOS平台目前拥有约425000个应用程序,Android平台目前拥有约...

Symbian Anna和Symbian Belle 你知道吗?

Symbian Anna 为诺基亚(Nokia)于2011年4月12日最新发布的手机操作系统 诺基亚 Symbian Anna,但Symbian Anna仅仅是Symbian^3的升级固件。Symbian Anna 加入了更加人性化的输入界面,并且使用了全新的浏览器,速度更快。支持更新升级到Sym...

A2SD+后,转移内部存储安装程序及数据文件到EXT3分区的方法,完全解决空间不足的问题!

HD2直刷的安卓内置空间对于喜欢安装各种各样应用程序的朋友来说实在是不够用,安装不了多少软件就会出现内存紧张的情况。好在有A2SD+这样的技术来解决空间不足的问题。A2SD+比起DATA2SD的方法(即在SD卡上做一个data2sd\data.img文件虚拟为手机存储空间)更稳定、更快速。比如:A2...

完美解决SD卡损坏or文件已损坏,需要格式化SD卡

这个android系统的一个通病,我以前看见这个就怒火!什么破手机,一个月来一次,像女人一样。。。症状: 说一下为什么好好地手机会出现这个问题,   发现:   请回忆,我们往往是在使用相机,看在线视频,使用XX市场,重启、开机,或者打开设置&hel...

新版基带更换工具23P.78P.83P.85P.91P

新版基带更换工具23P.78P.83P.85P.91P

新版基带更换工具,适用于亚太版和欧版 可更换23P.78P.83P.85P.91P版基带, http://115.com/file/besj8oez...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。