自己动手清除Android系统中的不良程序

原创 2014年06月29日 16:56:35

自己动手清除Android系统中的不良程序

陈跃峰

2014/6/29

 

         最近在使用我的Nexus7时,总是经常莫名其妙的弹出一些广告弹窗,还会自动下载一些应用程序,还会在桌面上生成一个叫做“精彩应用”的图标,这个快捷方式关联的程序显示的内容和广告内容是一致的,很是烦人,使用360手机卫士和乐安全都发现不了这个不良程序,所以就自己动手来清除这个程序。

         由于Nexus 7平时用于测试程序,安装的应用很多,手动删除了一些可疑的应用以后还是不行,猜测是某些app可能被人篡改了,就不再去删除app了,而把目光转向了桌面快捷方式上。

         既然生成了“精彩应用”这个图标,而且点击可以启动程序,但是安卓系统的快捷方式和app之间没有很直观的联系,这就需要写些代码来解决了:

         1、获取快捷方式对应的包名

         众所周期,每个安卓app依靠一个唯一的包名就行区分,只要能发现这个包名,剩下就简单了。

         获取快捷方式需要读写系统设置的权限:

                   <uses-permissionandroid:name="com.android.launcher.permission.READ_SETTINGS" />

   <uses-permissionandroid:name="com.android.launcher.permission.WRITE_SETTINGS" />

         读取快捷方式的代码如下:

/**

          * 显示快捷方式信息

          * @param context 上下文对象

          */

         publicstatic void printShortcutInfo(Context context){

                   try{

                            ContentResolverresolver = context.getContentResolver();

                 Cursor cursor = resolver.query(Uri.parse("content://com.android.launcher2.settings/favorites?notify=true"),null,null,null,null);

                 int index = 0;

                 while(cursor.moveToNext()){

                          intnum = 5;

                          try{

                                    Stringinfo = "";

                                    for(inti = 0;i < num;i++){

                                              info+= cursor.getString(i) + ",";

                                    }

                                    System.out.println(index+++ "  " + info);

                          }catch(Exceptione1){}

                 }

                 cursor.close();

                   }catch(Exceptione){

                            e.printStackTrace();

                   }

         }

         通过执行这些代码,发现“精彩应用”这个快捷方式对应的包名是“cn.com.hkgt.gasapp”,通过这个包名也不能直接找到对应的程序,那下面就自己编码卸载这个程序,看看到底是哪里出了问题。

         2、根据包名卸载app

         对于没有root的程序,卸载时只是调用卸载界面,但是这个对于我来说足够了。

         卸载程序需要的权限:

                   <uses-permissionandroid:name="android.permission.DELETE_PACKAGES" />

         卸载程序的方法代码:

                   /**

              * 卸载软件

              *@param context 上下文对象

              *@param pkgName 包名

              */

             public static void deletePackage(Contextcontext,String pkgName){

                       try{

                                Uri packageURI =Uri.parse("package:" + pkgName);    

                                Intent uninstallIntent = newIntent(Intent.ACTION_DELETE, packageURI);    

                                context.startActivity(uninstallIntent);

                       }catch(Exception e){

                                e.printStackTrace();

                       }

             }

         执行这个方法卸载上面包名的程序时,终于发现是中石化营业厅程序被人篡改了,卸载该app,去他们的官网再次下载安装app,世界终于一片清静了。

        

         最后发现百度应用中心和应用宝里面提供的中石化营业厅程序都是被篡改的程序,看来以后下载和安装app还是小心一点的好。

        

         把自己的这一小段经历和大家一起分享,如果大家有更好的方法也请告诉我,谢谢。联系方式:cqucyf@JavaMeStudio.com

《自己动手写操作系统》第三章a/pmtest1.asm

[html] view plaincopy  1 ; ==========================================    2 ; pmtest1.asm    3...
  • trochiluses
  • trochiluses
  • 2013年05月27日 10:31
  • 1963

自己动手写操作系统(五)

这里开始就进入了core的启动流程(类似于linux的kernel)。core的入口函数是start_core,如何定义如何函数呢?我们这里通过编译指令就可以了。参看下面的配置文件: ENTRY (...
  • wang_sun_1983
  • wang_sun_1983
  • 2017年07月16日 21:37
  • 662

自己动手写操作系统(一)

从去年就想好好的读一下这本书,跟着书上做一下,但是给耽搁了,现在就好好的开始探索这么书吧! 虽然我很想在这里吹一段这本书有多么的厉害,但是!我第一章都没有看完,吹不了!!!等我读的个七七八八再回来吹吧...
  • YuDale
  • YuDale
  • 2017年03月24日 21:11
  • 1497

自己动手写操作系统之环境构建篇

自己动手写操作系统之环境构建篇 最近开始看自己动手写操作系统,但是书中采用软盘启动很是郁闷,于是想是否可以从优盘启动呢?作为一名BIOS工程师,曾经用优盘启动过dos,linux等系统,于是做了如下尝...
  • gx19862005
  • gx19862005
  • 2015年03月18日 15:36
  • 866

《自己动手写操作系统》—— 工作环境搭建

最近在看《自己动手写操作系统》 于渊著,看第一页头就蒙了,书上说要准备一张空白软盘,都2010年了,上哪去找软盘啊,自从接触计算机以来我还没见过软盘呢,估计要到科技博物馆才找得到吧,呵呵。其实在第二章...
  • feixiaku
  • feixiaku
  • 2014年07月14日 00:32
  • 3210

动手实现自己的 STL 容器 《1》---- vector

本文参考了侯捷的 《STL 源码分析》一书,出于兴趣,自行实现了简单的 vector 容器。 之后会陆续上传 list, deque 等容器的代码,若有错误,欢迎留言指出。 vector 容易实现...
  • u012653791
  • u012653791
  • 2014年04月11日 15:58
  • 2177

《自己动手设计数据库》第一部分摘录

《自己动手设计数据库》第一部分摘录,简略了很多内容,仅作为笔记使用
  • YQXLLWY
  • YQXLLWY
  • 2016年10月21日 15:56
  • 1186

自己动手写操作系统——开发环境搭建

本文参考于渊老师写的《Orange S:一个操作系统的实现》一书。 参考文章: http://www.linuxidc.com/Linux/2016-10/135905.htm http://b...
  • zjdnwpu
  • zjdnwpu
  • 2017年04月16日 11:25
  • 1084

想下载自己动手写操作系统PDF 于渊 70M 超清晰版 part 1 of 5 的朋友注意啦

原链接年久失效,请转到115网盘下载完整PDF书,http://115.com/file/dp7nifwi
  • goshja
  • goshja
  • 2012年03月13日 22:58
  • 2444

自己动手开发编译器

百度搜索“自己动手开发编译器”
  • hutao1101175783
  • hutao1101175783
  • 2015年07月02日 13:43
  • 446
收藏助手
不良信息举报
您举报文章:自己动手清除Android系统中的不良程序
举报原因:
原因补充:

(最多只允许输入30个字)