android系統將普通應用升級爲系統應用

做爲一名程序員,有的時候並非使用軟件,而是去改造軟件,不單單只是會編程而已,還要知足客戶的需求。這樣,才能開發出符合客戶需求的應用,在關於到涉及到android底層的應用的時候,手機就須要root了,我使用的root工具是下面一款軟件,這款軟件對手機root以後,這款軟件卸載後,手機將不具備root權限,因此使用者能夠大大放心,我以前的時候擔憂手機root完了以後手機有風險,這下不用擔憂了,下圖是我已經root後的手機界面:linux

root完手機以後,若是咱們本身開發了一款app或者發現了一個好用的app,安裝到手機上以後,可是咱們在恢復出廠設置以後還須要從新下載安裝,免不了很多麻煩,或者可能有其餘的需求,須要咱們將本身客戶的應用變爲系統的應用,不讓用戶隨意卸載。android

第一步:手機須要有root權限程序員

android系統本是linux系統,熟悉linux命令的程序員都知道,在linux系統中,權限很重要,當普通用戶切換爲root用戶的時候使用的是su命令,android系統的底層也是linux內核,因此一個原理,android爲了系統的安全,默認的不是root角色登錄,若是想使用root權限,須要使用su命令,可是在android系統中/system是隻讀權限,若是想修改權限,就須要chmod命令,chmod命令又是隻有root角色才能夠運行,就這樣造成了一個死循環,因此通常的方法就不能得到root權限。shell

第二步:使用命令修改權限編程

下面是我操做的命令:安全

Windows PowerShell
版權全部 (C) 2009 Microsoft Corporation。保留全部權利。

PS C:\Users\Administrator> adb shell
shell@android:/ $ su
su
root@android:/ # ll
ll
drwxr-xr-x root     root              2016-01-08 15:52 acct
-rw-r--r-- root     root         2503 1970-01-01 08:00 advanced_meta_init.project.rc
-rw-r--r-- root     root        32580 1970-01-01 08:00 advanced_meta_init.rc
drwxr-xr-x system   system            1970-01-01 08:00 apps
drwxrwx--- system   cache             2016-01-08 15:35 cache
dr-x------ root     root              2016-01-08 15:52 config
lrwxrwxrwx root     root              2016-01-08 15:52 d -> /sys/kernel/debug
drwxrwx--x system   system            2016-01-08 16:04 data
-rw-r--r-- root     root          173 1970-01-01 08:00 default.prop
drwxr-xr-x root     root              2016-01-08 16:02 dev
lrwxrwxrwx root     root              1970-01-01 08:00 emmc@android -> /dev/block/mmcblk0p4
lrwxrwxrwx root     root              1970-01-01 08:00 emmc@apps -> /dev/block/mmcblk0p3
lrwxrwxrwx root     root              1970-01-01 08:00 emmc@cache -> /dev/block/mmcblk0p5
lrwxrwxrwx root     root              1970-01-01 08:00 emmc@ebr1 -> /dev/block/mmcblk0p1
lrwxrwxrwx root     root              1970-01-01 08:00 emmc@fat -> /dev/block/mmcblk0p7
lrwxrwxrwx root     root              1970-01-01 08:00 emmc@sec_ro -> /dev/block/mmcblk0p2
lrwxrwxrwx root     root              1970-01-01 08:00 emmc@usrdata -> /dev/block/mmcblk0p6
lrwxrwxrwx root     root              2016-01-08 15:52 etc -> /system/etc
lrwxrwxrwx root     root              2016-01-08 15:52 external_sd -> /mnt/sdcard/external_sd
-rwxr-x--- root     root       143920 1970-01-01 08:00 init
-rwxr-x--- root     root           93 1970-01-01 08:00 init.aee.customer.rc
-rwxr-x--- root     root        13573 1970-01-01 08:00 init.factory.rc
-rwxr-x--- root     root         2344 1970-01-01 08:00 init.goldfish.rc
-rwxr-x--- root     root         3137 1970-01-01 08:00 init.project.rc
-rwxr-x--- root     root        38576 1970-01-01 08:00 init.rc
-rwxr-x--- root     root        16181 1970-01-01 08:00 init.usb.rc
-rwxr-x--- root     root          583 1970-01-01 08:00 init.xlog.rc
-rw-r--r-- root     root        10520 1970-01-01 08:00 meta_init.rc
drwxrwxr-x root     system            2016-01-08 15:52 mnt
dr-xr-xr-x root     root              1970-01-01 08:00 proc
lrwxrwxrwx root     root              1970-01-01 08:00 res -> /system/res
drwx------ root     root              2014-10-23 17:41 root
drwxr-x--- root     root              1970-01-01 08:00 sbin
lrwxrwxrwx root     root              2016-01-08 15:52 sdcard -> /mnt/sdcard
lrwxrwxrwx root     root              2016-01-08 15:52 sdcard2 -> /mnt/sdcard/external_sd
drwxr-xr-x root     root              2016-01-08 15:52 sys
drwxr-xr-x root     root              2016-01-08 15:45 system
-rw-r--r-- root     root          272 1970-01-01 08:00 ueventd.goldfish.rc
-rw-r--r-- root     root         4866 1970-01-01 08:00 ueventd.rc
lrwxrwxrwx root     root              2016-01-08 15:52 vendor -> /system/vendor
root@android:/ # chmod 777 system
chmod 777 system
Unable to chmod system: Read-only file system
10|root@android:/ # mount -o rw,remount yaffs2 /system
mount -o rw,remount yaffs2 /system
root@android:/ # ll
ll
drwxr-xr-x root     root              2016-01-08 15:52 acct
-rw-r--r-- root     root         2503 1970-01-01 08:00 advanced_meta_init.project.rc
-rw-r--r-- root     root        32580 1970-01-01 08:00 advanced_meta_init.rc
drwxr-xr-x system   system            1970-01-01 08:00 apps
drwxrwx--- system   cache             2016-01-08 15:35 cache
dr-x------ root     root              2016-01-08 15:52 config
lrwxrwxrwx root     root              2016-01-08 15:52 d -> /sys/kernel/debug
drwxrwx--x system   system            2016-01-08 16:04 data
-rw-r--r-- root     root          173 1970-01-01 08:00 default.prop
drwxr-xr-x root     root              2016-01-08 16:02 dev
lrwxrwxrwx root     root              1970-01-01 08:00 emmc@android -> /dev/block/mmcblk0p4
lrwxrwxrwx root     root              1970-01-01 08:00 emmc@apps -> /dev/block/mmcblk0p3
lrwxrwxrwx root     root              1970-01-01 08:00 emmc@cache -> /dev/block/mmcblk0p5
lrwxrwxrwx root     root              1970-01-01 08:00 emmc@ebr1 -> /dev/block/mmcblk0p1
lrwxrwxrwx root     root              1970-01-01 08:00 emmc@fat -> /dev/block/mmcblk0p7
lrwxrwxrwx root     root              1970-01-01 08:00 emmc@sec_ro -> /dev/block/mmcblk0p2
lrwxrwxrwx root     root              1970-01-01 08:00 emmc@usrdata -> /dev/block/mmcblk0p6
lrwxrwxrwx root     root              2016-01-08 15:52 etc -> /system/etc
lrwxrwxrwx root     root              2016-01-08 15:52 external_sd -> /mnt/sdcard/external_sd
-rwxr-x--- root     root       143920 1970-01-01 08:00 init
-rwxr-x--- root     root           93 1970-01-01 08:00 init.aee.customer.rc
-rwxr-x--- root     root        13573 1970-01-01 08:00 init.factory.rc
-rwxr-x--- root     root         2344 1970-01-01 08:00 init.goldfish.rc
-rwxr-x--- root     root         3137 1970-01-01 08:00 init.project.rc
-rwxr-x--- root     root        38576 1970-01-01 08:00 init.rc
-rwxr-x--- root     root        16181 1970-01-01 08:00 init.usb.rc
-rwxr-x--- root     root          583 1970-01-01 08:00 init.xlog.rc
-rw-r--r-- root     root        10520 1970-01-01 08:00 meta_init.rc
drwxrwxr-x root     system            2016-01-08 15:52 mnt
dr-xr-xr-x root     root              1970-01-01 08:00 proc
lrwxrwxrwx root     root              1970-01-01 08:00 res -> /system/res
drwx------ root     root              2014-10-23 17:41 root
drwxr-x--- root     root              1970-01-01 08:00 sbin
lrwxrwxrwx root     root              2016-01-08 15:52 sdcard -> /mnt/sdcard
lrwxrwxrwx root     root              2016-01-08 15:52 sdcard2 -> /mnt/sdcard/external_sd
drwxr-xr-x root     root              2016-01-08 15:52 sys
drwxr-xr-x root     root              2016-01-08 15:45 system
-rw-r--r-- root     root          272 1970-01-01 08:00 ueventd.goldfish.rc
-rw-r--r-- root     root         4866 1970-01-01 08:00 ueventd.rc
lrwxrwxrwx root     root              2016-01-08 15:52 vendor -> /system/vendor
root@android:/ # chmod 777 system
chmod 777 system
root@android:/ # ll
ll
drwxr-xr-x root     root              2016-01-08 15:52 acct
-rw-r--r-- root     root         2503 1970-01-01 08:00 advanced_meta_init.project.rc
-rw-r--r-- root     root        32580 1970-01-01 08:00 advanced_meta_init.rc
drwxr-xr-x system   system            1970-01-01 08:00 apps
drwxrwx--- system   cache             2016-01-08 15:35 cache
dr-x------ root     root              2016-01-08 15:52 config
lrwxrwxrwx root     root              2016-01-08 15:52 d -> /sys/kernel/debug
drwxrwx--x system   system            2016-01-08 16:04 data
-rw-r--r-- root     root          173 1970-01-01 08:00 default.prop
drwxr-xr-x root     root              2016-01-08 16:02 dev
lrwxrwxrwx root     root              1970-01-01 08:00 emmc@android -> /dev/block/mmcblk0p4
lrwxrwxrwx root     root              1970-01-01 08:00 emmc@apps -> /dev/block/mmcblk0p3
lrwxrwxrwx root     root              1970-01-01 08:00 emmc@cache -> /dev/block/mmcblk0p5
lrwxrwxrwx root     root              1970-01-01 08:00 emmc@ebr1 -> /dev/block/mmcblk0p1
lrwxrwxrwx root     root              1970-01-01 08:00 emmc@fat -> /dev/block/mmcblk0p7
lrwxrwxrwx root     root              1970-01-01 08:00 emmc@sec_ro -> /dev/block/mmcblk0p2
lrwxrwxrwx root     root              1970-01-01 08:00 emmc@usrdata -> /dev/block/mmcblk0p6
lrwxrwxrwx root     root              2016-01-08 15:52 etc -> /system/etc
lrwxrwxrwx root     root              2016-01-08 15:52 external_sd -> /mnt/sdcard/external_sd
-rwxr-x--- root     root       143920 1970-01-01 08:00 init
-rwxr-x--- root     root           93 1970-01-01 08:00 init.aee.customer.rc
-rwxr-x--- root     root        13573 1970-01-01 08:00 init.factory.rc
-rwxr-x--- root     root         2344 1970-01-01 08:00 init.goldfish.rc
-rwxr-x--- root     root         3137 1970-01-01 08:00 init.project.rc
-rwxr-x--- root     root        38576 1970-01-01 08:00 init.rc
-rwxr-x--- root     root        16181 1970-01-01 08:00 init.usb.rc
-rwxr-x--- root     root          583 1970-01-01 08:00 init.xlog.rc
-rw-r--r-- root     root        10520 1970-01-01 08:00 meta_init.rc
drwxrwxr-x root     system            2016-01-08 15:52 mnt
dr-xr-xr-x root     root              1970-01-01 08:00 proc
lrwxrwxrwx root     root              1970-01-01 08:00 res -> /system/res
drwx------ root     root              2014-10-23 17:41 root
drwxr-x--- root     root              1970-01-01 08:00 sbin
lrwxrwxrwx root     root              2016-01-08 15:52 sdcard -> /mnt/sdcard
lrwxrwxrwx root     root              2016-01-08 15:52 sdcard2 -> /mnt/sdcard/external_sd
drwxr-xr-x root     root              2016-01-08 15:52 sys
drwxrwxrwx root     root              2016-01-08 15:45 system
-rw-r--r-- root     root          272 1970-01-01 08:00 ueventd.goldfish.rc
-rw-r--r-- root     root         4866 1970-01-01 08:00 ueventd.rc
lrwxrwxrwx root     root              2016-01-08 15:52 vendor -> /system/vendor
root@android:/ # cd system
cd system
root@android:/system # ll
ll
drwxr-xr-x root     root              2016-01-08 15:42 app
drwxr-xr-x root     shell             2016-01-08 16:02 bin
-rw-r--r-- root     root         4469 2008-08-01 20:00 build.prop
drwxr-xr-x root     root              2016-01-08 15:42 etc
drwxr-xr-x root     root              2016-01-08 15:42 fonts
drwxr-xr-x root     root              2016-01-08 15:42 framework
drwxr-xr-x root     root              2016-01-08 15:42 lib
drwxr-xr-x root     root              1970-01-01 08:00 lost+found
drwxr-xr-x root     root              2016-01-08 15:42 media
-rw-r--r-- root     root       723451 2008-08-01 20:00 recovery-from-boot.p
drwxr-xr-x root     root              2016-01-08 15:42 res
-rw-r--r-- root     root          183 2008-08-01 20:00 sdcard0.sh
-rw-r--r-- root     root          183 2008-08-01 20:00 sdcard1.sh
drwxr-xr-x root     root              1970-01-01 08:00 secro
drwxr-xr-x root     root              2016-01-08 15:42 tts
drwxr-xr-x root     root              2016-01-08 15:42 usr
drwxr-xr-x root     shell             2016-01-08 15:42 vendor
drwxr-xr-x root     root              2016-01-08 15:42 weather
drwxr-xr-x root     shell             2016-01-08 15:42 xbin
root@android:/system # chmod 777 app
chmod 777 app
root@android:/system # PS C:\Users\Administrator> adb shell
View Code

 

第三步:將app導入 /system/app 目錄app

 

 

mv weixin638android680.apk /system/app
failed on 'weixin638android680.apk' - Cross-device linkide

相關文章
相關標籤/搜索