系统应用_系统应用设置 - CSDN
精华内容
参与话题
  • 将一个应用安装为系统应用

    千次阅读 2017-07-26 18:16:55
    如何将一个应用安装为系统应用 首先,我们需要获得root权限 adb root其次,我们需要重新挂载 adb remount经过上边的两步,我们应该已经获取了足够的权限来进行下列操作,将你的apk,push到/system/app底下 adb ...

    如何将一个应用安装为系统应用

    1. 首先,我们需要获得root权限

      adb root

    2. 其次,我们需要重新挂载

      adb remount

    3. 经过上边的两步,我们应该已经获取了足够的权限来进行下列操作,将你的apk,push到/system/app底下

      adb push target.apk /system/app/targetDir/

    4. 尝试重启

      adb reboot

      应该这样子可以安装了

    如何更新一个系统应用

    1. 首先如上前两步,获取足够的权限

    2. 将apk文件push到sdcard上的某个文件夹里边,然后在手机上安装就可以了,这样子可以避免因为adb install出现的错误

      adb push target.apk /sdcard/targetDir/

    同理,我们想要删除系统应用的话

    1. 足够的权限支持下边的操作

    2. 进入adb shell

      adb shell

      su

    3. 进入系统目录

      cd /system/app/

    4. 然后这天下大可取得,想干什么就可以干什么了

    展开全文
  • Android 将自己的应用改为系统应用
                         

    转载请标明出处:http://blog.csdn.net/xx326664162/article/details/53406933    文章出自:薛瑄的博客

    所谓系统程序就是system/app目录中的程序,普通应用转换成系统程序后有稳定、减少内存(DATA)空间占用、恢复出厂设置后不会消失、修改系统时间、调用隐藏方法、系统关机重启、静默安装升级卸载应用等等等等优点,想知道怎么操作?接下来我们介绍三种方法。

    第一种:使用ADB命令将app安装在system/app目录下

    参考:android 将自己的应用改为系统应用

    这种方法的原理就是:

    1、把apk文件移动到system/app目录,
    2、.so文件移动到system/lib目录。
    3、修改相应的权限

    操作步骤:

    1.     将你的手机数据线,插上,把你的设备设置为允许usb调试
    2.     打开命令终端cmd
    3.     输入命令        adb  shell
    4.     确定能进入系统
          这里写图片描述

    5.  输入命令 mount
       这里写图片描述

    6.   因为system默认是只读文件夹,所以根据上面的提示输入下面命令,使其变为可读写
    mount  -o  remount  /dev/block/nandd /system   (图)
    这里写图片描述

    再出输入 mount 查看system和上面的不一样了,说明正确

    这里写图片描述

    7.     输入 exit 退出android系统终端

    8.  解压你的apk文件,进入查看lib/armeabi文件夹下有没有 .so文件,如果没有这种库文件的话,直接跳到第10步,(因为有些apk文件是要调用动态链接库的,你不拷贝的话,就没有办法运行!会报错)如果有的话, 将这些*.so文件都拷贝到/system/lib文件夹下:

    命令:adb  push  libiReader_txtparser.so  system/lib
    这里写图片描述

    9、拷贝完了之后呢,要给这些库文件添加权限,看看别的库文件权限是几

    chmod   644  xxxxx.so
    • 1

    这里写图片描述

    10.  将你的apk文件拷贝进入/system/app(该文件夹里存放着所以系统级别的apk),图中我是将iReader.apk拷贝过去的

    这里写图片描述

    11.  再次进入android终端  adb shell
    12.  进入system/app文件夹   cd  system/app
    13.  查看其他apk的权限   ll   能看出区别

    这里写图片描述

    14.  修改iReader.apk权限使其和其他的一样 chmod 644 iReader.apk
    这里写图片描述

    15.  搞定这些之后,重启设备 reboot
    16.  看看系统里面是不是安装好了该应用,点击一下,看是否正常运行,可以的话,再检测是否无法卸载!

    第二种:借助工具把app转为系统应用(原理和方法一一样)

    转载:安卓进阶教程:怎样把应用转换成系统程序

    RE管理器转换和LINK2SD都可以实现,任选其一即可

    使用RE管理器转换

    1、首先我们把需要转换的程序在电脑上用压缩软件打开 ,看有没有lib这个目录。如果有,再把lib目录打开,直到出现以.so结尾的文件,把文件都拖出来备用。

    这里写图片描述这里写图片描述

    2、把需要转换的应用(apk文件)连同刚拖出的.so文件(如果有),放到手机内存卡,
    3、用RE管理器复制到system目录,把权限更改如图,
    4、把更改权限后的apk文件移动到system/app目录,.so文件移动到system/lib目录。
    5、完成后重启手机,应用就转换成系统程序了。

    使用LINK2SD转换

    这里写图片描述这里写图片描述

    如果感觉以上方法麻烦,也可借助工具来操作,LINK2SD、钛备份等软件都可以把普通程序转换为系统程序,以LINK2SD为例,打开LINK2SD,找到需要软件的程序,点击,再点操作,选择转换系统应用,接着会有个确认窗口,确认后,重启手机程序就转换好了。

    第三种:使用signapk打包成系统应用

    参考:
     android之使用signapk打包成系统应用,获取系统权限
     使用platform密钥来给apk文件签名的命令
     Android安全开发之通用签名风险
      关于android:sharedUserId=”android.uid.system”这个系统级权限
    安装APK 时, 提示” 共享用户权限不完整” , 不能安装成功, 如何解决? 
    https://github.com/android/platform_build/tree/master/target/product/security

    为了更好地理解下面介绍的两种方法的原理,先来学习几个概念:

    Android应用签名机制

    Android系统要求安装的应用必须用数字证书进行签名后才能安装,并且签名证书的私钥由应用开发者保存。签名证书的生成也由开发者自己生成。在应用安装时会校验包名(package name)和签名,如果系统中已经存在了一个相同的包名和签名的应用,将会用新安装的应用替换旧的;如果包名相同但是签名不同,则会安装失败。

    为什么需要数字签名?

    数字签名是防止要保护的内容被篡改,用非对称加密算法。先对要保护的内容进行消息摘要,用私钥对消息摘要进行加密,生成数字签名,将数字签名和要保护的内容一起分发出去。 内容接收者用公钥对数字签名解密得到发送者给的消息摘要A,内容接收者对接收到的内容进行用相同的消息摘要算法处理得到消息摘要B,对比A和B是否相同,来判定传送的内容是否被篡改。 正常的APK文件是个ZIP压缩文件,除了应用的可执行文件、资源文件,还包括这些可执行文件、资源文件的摘要信息,数字证书的公钥信息等。并且通过这些签名信息可以确定APP和其开发者的关系。

    进行签名需要的工具有哪些?

    对apk进行签名需要用到签名证书和签名工具。Android系统要求对APP进行签名的数字证书可以由开发者自己生成。签名工具有jarsigner和signapk。jarsigner是Java本身自带的一个工具,他也可以对jar进行签名的;而signapk是专门为了Android应用程序apk进行签名的工具。二者的区别是:jarsigner工具签名时使用的是keystore签名文件,signapk工具签名时使用的是pk8,x509.pem文件。

    签名后的文件都有哪些?

    应用签名完后在应用的META-INF目录下会有三个文件:

    CERT.RSA、CERT.SF和MANIFEST.MF。

    MANIFEST.MF中保存了所有其他文件的SHA1摘要并base64编码后的值。

    CERT.SF文件 是对MANIFEST.MF文件中的每项中的每行加上“rn”后,再次SHA1摘要并base64编码后的值(这是为了防止通过篡改文件和其在MANIFEST.MF中对应的SHA1摘要值来篡改APK,要对MANIFEST的内容再进行一次数字摘要)。

    CERT.RSA 文件:包含了签名证书的公钥信息和发布机构信息。

    对安装包的校验过程在源码的frameworks/base/core/java/android/content/pm/PackageParser.java类中可以看到

    什么是通用签名?

    搭建好Android开发环境后(使用Eclipse或Android Studio),对APK签名的默认密钥存在debug.keystore文件中。在linux和Mac上debug.keystore文件位置是在~/.android路径下,在windows目录下文件位置是C:\user\用户名.android路径下。

    除了debug.keystore外,在AOSP发布的Android源码中,还有以下几个证书是公开的,任何人都可以获取,在源码的build/target/product/security目录中:

    这里写图片描述

    这几个证书的作用:

    testkey

    Generic default key for packages that do not otherwise specify a key.

    platform

    Test key for packages that are part of the core platform.

    shared

    Test key for things that are shared in the home/contacts process.

    media

    Test key for packages that are part of the media/download system.

    verity

    Test Key for verifiedboot system imagein Android Lollipop. Sign boot.img,sign verity metadata in system.img.

    通用签名风险:

    (1)如果攻击者的应用包名与目标应用相同,又使用了相同的密钥对应用进行签名,攻击者的应用就可以替换掉目标应用;

    (2)另外目标应用的自定义权限android:protectionlevel为“signature”或者“signatureOrSystem”时,保护就形同虚设;

    (3)如果设备使用的是第三方ROM,而第三方ROM的系统也是用AOSP默认的签名,那么使用如果使用系统级签名文件签名过的应用,权限就得到了提升。

    具体的实现方法:

    第一种是需要在Android系统源码的环境下用make来编译:

    1. 在应用程序的AndroidManifest.xml中的manifest节点中加入android:sharedUserId=”android.uid.system”这个属性。       
    2. 修改Android.mk文件,加入LOCAL_CERTIFICATE := platform这一行
    3. 使用mm命令来编译,生成的apk就有修改系统时间的权限了。

    第二种:

    下面着重介绍一个这个方法:

    1. 加入android:sharedUserId=”android.uid.system”这个属性。       

    <?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android"          package="com.example.jant.addview"          android:sharedUserId="android.uid.system" >    <application       ...(省略若干代码)    </application></manifest>
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    2. 使用自己的签名文件,生成apk

    3. 使用通用签名来重新给apk文件签名。

    3.1 .准备好platform.pk8、platform.x509.pem和签名工具signapk.jar(3个文件的下载地址),还有自己的apk,放在同一个文件夹下。

    3.2  在cmd下进入到该文件夹后,使用如下命令:
       这里写图片描述

    3.3 回车后我们的文件夹下已经多了一个new.apk文件了,这就将我们的应用打包成系统应用


    你也可以在github中去下载,但是下载的是SignApk.java,需要进行一些处理,如下

    1.1.进入\build\target\product\security,找到【platform.pk8】和【platform.x509.pem】系统密钥。
    1.2.进入\build\tools\signapk找到SignApk.java,运行 javac编译成SignApk.class
    1.3.执行命令java com.android.signapk.SignApk platform.x509.pem platform.pk8 input.apk output.apk

    最后解释一下原理

    首先加入android:sharedUserId=”android.uid.system”这个属性。通过Shared User id,拥有同一个User id的多个APK可以配置成运行在同一个进程中。那么把程序的UID配成android.uid.system,也就是要让程序运行在系统进程中,也就是系统应用。

    只是加入UID还不够,如果这时候安装APK的话发现无法安装,提示签名不符,原因是程序想要运行在系统进程中还要有目标系统的platform key,就是上面第二个方法提到的platform.pk8和platform.x509.pem两个文件。用这两个key签名后apk才真正可以放入系统进程中。第一个方法中加入LOCAL_CERTIFICATE := platform其实就是用这两个key来签名。

    这也有一个问题,就是这样生成的程序只有在原始的Android系统或者是自己编译的系统中才可以用,因为这样的系统才可以拿到platform.pk8和platform.x509.pem两个文件。要是别家公司做的Android上连安装都安装不了。试试原始的Android中的key来签名,程序在模拟器上运行OK,不过放到小米四上安装uibl,如下图,这样也是保护了系统的安全。

    这里写图片描述

      最后还说下,这个android:sharedUserId属性不只可以把apk放到系统进程中,也可以配置多个APK运行在一个进程中,这样可以共享数据,应该会很有用的。
    你在Manifest.xml里声明使用了shareuserid 或者一些特殊permission,比如你shareuserid到uid.system,就必须使用系统platform签名来签你的apk,否则是不能安装的,同理share到其他用户id或者其他process上也是得用跟那个process运行的apk一样的签名
    一般签名肯定是厂商私有的,你肯定是没办法了,除非机器烧的是开发版本(eng)

    检验app是否已经是系统应用

    查看应用的进程属性,如果是system用户组,说明已经是系统应用。

    这里写图片描述

     

    关注我的公众号,轻松了解和学习更多技术
      这里写图片描述

               
    展开全文
  • Android系统应用卸载

    千次阅读 2019-09-19 15:08:53
    1. 列出系统应用 # adb shell ls /system/app AirSharing As AsUI Bluetooth BluetoothMidiService CABLService Calculator CalendarProvider CaptivePortalLogin 列出第三方应用(需root权限) # adb shell ls /...
    1. 列出系统应用
    # adb shell ls /system/app
    AirSharing
    As
    AsUI
    Bluetooth
    BluetoothMidiService
    CABLService
    Calculator
    CalendarProvider
    CaptivePortalLogin
    
    列出第三方应用(需root权限)
    # adb shell ls /data/app
    2. 列出系统包
     #adb shell pm list packages -s  ,只输出系统的包。
    
    3. adb shell pm list packages -f,输出包和包相关联的文件
    4. adb shell pm list packages -3,只输出第三方的包。
    5. adb shell pm list packages -i,只输出包和安装信息(安装来源)。
    6. adb shell pm list packages -u,只输出包和未安装包信息(安装来源)。
    7. adb shell pm list packages --user <USER_ID>,根据用户id查询用户的空间的所有包,USER_ID代表当前连接设备的顺序,从零开始
    8. adb shell pm list packages -e "ximalaya",只输出启用的包。
    9. 列出应用包名$ adb shell pm list packages
    10. 获取apk路径$ adb shell pm path com.example.someapp
    11. 拉取apk文件到指定目录$ adb pull /data/app/com.example.someapp-2.apk path/to/desired/destination
    12. copy apk文件到内存卡$ adb shell cp /data/app/com.example.someapp-2.apk /sdcard/apkName.apk
    13. 拉取apk文件到当前目录$ adb pull /sdcard/apkName.apk .

    卸载系统应用(无需Root)

    $  pm list packages |grep 2345
    package:com.tianqi2345white.doov
    >adb shell
    shell@HNKIW-Q:/ $ pm uninstall -k --user 0 com.qihoo.appstore
    Success

    原文地址:https://www.jianshu.com/p/f39291c34424

    展开全文
  • 在安卓系统的机制里面 ,只要是将app复制到系统的system文件/system/app 文件夹中的app,都是系统应用,如果你把系统内置的应用从里面删除了,也就是彻底移除了作为系统应用的条件 .这就是很多软件可以删除 操控系统应用...

    在安卓系统的机制里面 ,只要是将app复制到系统的system文件/system/app 文件夹中的app,都是系统应用,如果你把系统内置的应用从里面删除了,也就是彻底移除了作为系统应用的条件 .这就是很多软件可以删除 操控系统应用的一个实际干的事情…

    当然,要做这个操作,就必须得先root,不然是不可能做到的.

    首先 : 可以用adb 命令 ,adb 命令是需要在电脑端完成的.
    (不明白adb命令的,可以去看我的博客里面的说明(https://blog.csdn.net/u012930316/article/details/90314634)

    可以先把你要设置的app ,复制到sd卡的目录下面,也就是 /sdcard/

    1. 这个操作也可以使用adb来完成
      adb push demo.apk /sdcard/

    2. 进入手机的shell 命令行:
      adb shell

    3. 然后切换root 用户
      su root

    如图:
    在这里插入图片描述

    1. 然后解锁系统分区,就锁这个分区后,就可以往里面复制我们的app安装包了 :
      mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system

    在这里插入图片描述
    5.再复制我们第一步时的app 至 系统分区下面的app目录下面
    cat /sdcard/demo.apk > /system/app/demo.apk // 这一步可以用 cp 实现,但一般设备中没有包含该命令。如果使用 mv 会出现错误:
    6. mount -o remount,ro -t yaffs2 /dev/block/mtdblock3 /system // 还原分区属性,只读。
    在这里插入图片描述

    然后,关机重启, 将自己的app设置为系统app就完成了.但是,弄完这一步,并不能保证我们的app能正常运行,还需要进行下面的操作 .

    在我们的app中,可能会有 lib 相关的关联包,你通过这样的方式引用的,需要手动去复制过去,那么需要进行这样的操作

    首先,在电脑端,用解压缩工具,将我们的app解压到某个文件夹下面,在刚才解压的文件夹下面有个文件夹lib

    在这里插入图片描述

    打开这个文件夹,里面会有三个文件夹,分别对应不同的 系统架构生成的 so文件 ,需要找到合适系统架构的的so文件,复制到 系统分区的lib 目录中去(/system/lib/) 我这里是小米5的手机,我复制的是 armeabi 这个目录下面的 so文件.
    那么执行步骤 ,
    先执行刚才的第一步,把这个so文件,全部复制到 /sdcard/ 就是文件的根目录下面
    再 执行上面的解锁系统分区 将系统分区解锁,然后把这个文件 复制到 对应的目录
    如:
    cat /sdcard/libsqlcipher.so > /system/lib/libsqlcipher.so

    再把系统分区锁回去,然后,就可以试试app,看会不会崩了.

    另外还有一个通过代码的方式去将自己的app 设定为系统应用 …原理和上面也是一样的.
    代码贴上… 可以通过按钮触发 setSysApp();这个方法即可

    /**
     *  设置为系统应用
     */
    public  void setSysApp() {
        final Runnable runnable = new Runnable() {
            @Override
            public void run() {
                // 解锁系统分区
                String s = "mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system";
                CMDUtils.upgradeRootPermission(s);
                //
                s="cat /sdcard/demo.apk > /system/app/demo.apk";
                CMDUtils.upgradeRootPermission(s);
                s="cat /sdcard/libsqlcipher.so > /system/lib/libsqlcipher.so";
                CMDUtils.upgradeRootPermission(s);
                s="mount -o remount,ro -t yaffs2 /dev/block/mtdblock3 /system ";
                CMDUtils.upgradeRootPermission(s);
            }
        };
        new ExecutorUtil(runnable).execute();
    
    }
    
    public class ExecutorUtil extends Thread{
        final static ExecutorService cachedThreadPool = Executors.newCachedThreadPool();
        private Runnable runnable;
    
        public ExecutorUtil(Runnable runnable){
            this.runnable=runnable;
        }
        @Override
        public void run() {
            try{
                Looper.prepare();
                new Handler().post(runnable);//在子线程中直接去new 一个handler
                Looper.loop();//这种情况下,Runnable对象是运行在子线程中的,可以进行联网操作,但是不能更新UI
            }catch (Exception e){
                e.printStackTrace();
            }
        }
        public void execute() {
            cachedThreadPool.execute(this);
        }
    }
    
    // 获取系统权限的方式执行
        public static String upgradeRootPermission(String cmd) {
            Log.i(TAG, "执行开始");
            //String pkgCodePath = "/sdcard";
            Process process = null;
            DataOutputStream os = null;
            try {
                process = Runtime.getRuntime().exec("su"); //切换到root帐号
                os = new DataOutputStream(process.getOutputStream());
                os.writeBytes(cmd + "\n");
                os.writeBytes("exit\n");
                os.flush();
                process.waitFor();
    
    
                StringBuilder successMsg = new StringBuilder();
                StringBuilder errorMsg = new StringBuilder();
                BufferedReader successResult = new BufferedReader(
                        new InputStreamReader(process.getInputStream()));
                BufferedReader errorResult = new BufferedReader(
                        new InputStreamReader(process.getErrorStream()));
                String s;
                while ((s = successResult.readLine()) != null) {
                    successMsg.append(s);
                }
                while ((s = errorResult.readLine()) != null) {
                    errorMsg.append(s);
                }
    //                cmdRsult = new CMD_Result(result, errorMsg.toString(),
    //                        successMsg.toString());
    
    
                Log.i(TAG, successMsg.toString() + "执行完成" + errorMsg.toString());
                return successMsg.toString();
            } catch (Exception e) {
                Log.e(TAG, "异常 upgradeRootPermission: ", e);
            } finally {
                Log.i(TAG, "执行完成finally");
                try {
                    if (os != null) {
                        os.close();
                    }
                    process.destroy();
                } catch (Exception e) {
                }
            }
            return  null;
        }
    
    展开全文
  • 鸿蒙系统应用开发初体验(一)

    万次阅读 2019-08-20 09:41:17
    上学时期就对操作系统非常有兴趣,甚至还想自己动手尝试尝试。 曾买来一堆关于操作系统的书籍肯,这不,翻出来几年前的博客《动手写简单的嵌入式操作系统https://blog.csdn.net/yyz_1987/article/details/9901269》...
  • 如何实现在 Android Studio 上开发系统应用(自带系统签名) 基于Android 系统应用包名和路径的局限性,很多同僚不得不暂时放弃 Android Studio,而无奈地选择在已经停止更新的eclipse上进行系统级应用的开发,...
  • Android 系统应用升级的坑

    千次阅读 2018-07-31 15:45:01
    基于业务需要,Android平板用户应用要变成系统应用,而且是桌面应用的唯一入口(关机开机后的应用界面)。 平板root之后,基于应用的改变为系统都有现成的说明,主要核心是将系统签名后的应用 adb push *****.apk /...
  • 有时候使用某些api需要使用系统权限,如调用PackageInstaller的相关接口,需要android.permission.INSTALL_PACKAGES权限,该权限系统只会授权给系统应用,此时可以考虑将我们的应用升级为系统应用,升级为系统应用有...
  • mac 删除系统应用

    千次阅读 2018-09-25 18:03:35
    最近升级了macOS Mojave,突然多出来3个系统应用: 就我这重强迫症者,必须想办法把它们给干掉了,以前用AppZapper删除系统应用,如今用它已经无法删除了。经一番思索终于找了一个方法: 第1步: 关闭安全设置 重启...
  • android 将个人应用改为系统应用

    万次阅读 2013-07-29 14:18:12
    操作步骤 1. 将你的手机数据线,插上,把你的设备设置为允许usb调试 ...4. 确定能进入系统 5. 输入命令 mount 6. 因为system默认是只读文件夹,所以根据上面的提示输入下面命令,使其变为可读写
  • adb卸载和安装系统应用

    万次阅读 2018-10-18 16:02:37
    卸载系统应用 1.先把原来已经存在的相同包名的APK删除 adb root adb disable-verity adb reboot 重启设备  adb root adb remount 提示remount succeeded 表示成功 adb shell  su cd /system/app rm -r test...
  • 使用vue搭建多页面多系统应用

    千次阅读 2019-02-26 15:29:44
    一、多页面多系统应用 思路 使用Vue搭建多页应用。所有系统都在同一目录下。配置多入口多出口。每个系统之间可以链接。每个系统内依然采用Vue单页应用开发。 组件复用性 可以将所有的系统公共组件放到系统目录最...
  • 黑科技 我们都知道一般预置的 APP 是不能卸载的,需要有 root 权限,今天分享一个命令,帮你卸载那些你想卸载又... -k 卸载应用且保留数据与缓存,如果不加 -k 则全部删除。 --user 指定用户 id,Android 系统...
  • 最近有win10系统用户打开word出现“应用程序无法正常启动0xc0000142”的提示 ,重启后再次出现提示,再次尝试打开发现可以正常打开。其他软件在安装时也会提示“应用程序无法正常启动0xc0000142”,同一个软件不是...
  • 所谓系统程序就是system/app目录中的程序,普通应用转换成系统程序后有稳定、减少内存(DATA)空间占用、恢复出厂设置后不会消失、修改系统时间、调用隐藏方法、系统关机... 将自己的应用改为系统应用 这种方法的原
  • Linux操作系统应用领域详解

    千次阅读 2018-07-12 18:13:14
    常用的IT服务器有Linux、Unix和Windows操作系统,其中Linux因其稳定、开源、免费、安全、高效的特点,发展迅猛,在服务器市场占有率超过80%,随着云计算的发展,Linux在未来服务器领域仍是大势所趋!Linux操作系统...
  • Android区分系统应用和安装应用

    千次阅读 2012-12-24 09:16:36
    获取全部包信息: [java] ... /** * * 获取系统中的全部包信息 * * @param context 应用上下文  * */ private void getPackageInfos(Context context) {   PackageManager pm = cont
  • android 判断是否为系统应用

    万次阅读 2013-10-16 11:14:26
    一定要用&号    方法四:这个方法应该是最优的。 1 ApplicationInfo appInfo = p.applicationInfo; 2 ...* Value for {@link #flags}: if set, this appl
  • 1.获取手机已安装的所有应用package的信息(其中包括用户自己安装的,还有系统自带的); 2.滤除系统自带应用; 3.通过列表显示出应用程序的图标(icon),和其他文字信息(应用名称,包名称package name,版本号等等...
  • Android源码开发之添加/删除系统应用

    千次阅读 2017-03-13 17:23:02
    本文参考老罗的系统源代码情景分析中的1.5章节 http://0xcc0xcd.com/p/books/978-7-121-18108-5/c15.php 想要在源码基础上添加一个应用整体来说只需要两步 第一步,添加所需要的模块 第二步,在系统的mk文件(一般在...
1 2 3 4 5 ... 20
收藏数 4,018,561
精华内容 1,607,424
关键字:

系统应用