真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

android博客,AndrOid

android重寫的哪些方法是系統(tǒng)默認(rèn)執(zhí)行的博客

重寫onDestroy方法,在里面不實(shí)現(xiàn)系統(tǒng)的,換成自己的方法。 步驟: 查看系統(tǒng)onDestroy方法的書寫方法 在自定義類中重寫該方法 定義自定義的方法 在onDestroy中調(diào)用該方法

創(chuàng)新互聯(lián)公司專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都做網(wǎng)站、成都網(wǎng)站制作、陳倉(cāng)網(wǎng)絡(luò)推廣、微信小程序開發(fā)、陳倉(cāng)網(wǎng)絡(luò)營(yíng)銷、陳倉(cāng)企業(yè)策劃、陳倉(cāng)品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營(yíng)等,從售前售中售后,我們都將竭誠(chéng)為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);創(chuàng)新互聯(lián)公司為所有大學(xué)生創(chuàng)業(yè)者提供陳倉(cāng)建站搭建服務(wù),24小時(shí)服務(wù)熱線:13518219792,官方網(wǎng)址:www.cdcxhl.com

如何寫 Android init.rc-ljbphoebe-ChinaUnix博客

Commands:命令

Actions: 動(dòng)作

Triggers: 觸發(fā)條件

Services: 服務(wù)

Options: 選項(xiàng)

Propertise: 屬性

(1) Commands是一些基本的操作,例如:

mkdir /sdcard 0000 system system mkdir /system

mkdir /data 0771 system system

mkdir /cache 0770 system cache

mkdir /config 0500 root root

mkdir /sqlite_stmt_journals 01777 root root

mount tmpfs tmpfs /sqlite_stmt_journals size=4m

這些命令在init可執(zhí)行程序中被解析,然后調(diào)用相關(guān)的函數(shù)來(lái)實(shí)現(xiàn)。

(2) Actions(動(dòng)作)表示一系列的命令,通常在Triggers(觸發(fā)條件)中調(diào)用,動(dòng)作和觸發(fā)條件的形式為:

on

動(dòng)作的使用示例如下:

on init

export PATH /sbin:/system/sbin:/system/bin:/system/xbin

mkdir /system

init表示一個(gè)觸發(fā)條件,這個(gè)觸發(fā)事件發(fā)生后,進(jìn)行設(shè)置環(huán)境變量和建立目錄的操作稱為一個(gè)“動(dòng)作”

(3) Services(服務(wù))通常表示啟動(dòng)一個(gè)可執(zhí)行程序,Options(選項(xiàng))是服務(wù)的附加內(nèi)容,用于配合服務(wù)使用。

service vold /system/bin/vold

socket vold stream 0660 root mount

service bootsound /system/bin/playmp3

user media

group audio

oneshot

vold和bootsound分別是兩個(gè)服務(wù)的名稱,/system/bin/vold和/system /bin/playmp3分別是他們所對(duì)應(yīng)的可執(zhí)行程序。

socket、user、group、oneshot就是配合服務(wù)使用的選項(xiàng)。其中oneshot選項(xiàng)表示該服務(wù)只啟動(dòng)一次,而如果沒有oneshot選項(xiàng),

這個(gè)可執(zhí)行程序會(huì)一直存在--如果可執(zhí)行程序被殺死,則會(huì)重新啟動(dòng)。

(4) Properties(屬性)是系統(tǒng)中使用的一些值,可以進(jìn)行設(shè)置和讀取。

setprop ro.FOREGROUND_APP_MEM 1536

setprop ro.VISIBLE_APP_MEM 2048

on property:ro.kernel.qemu=1

start adbd

setprop 用于設(shè)置屬性,on property可以用于判斷屬性,這里的屬性在整個(gè)Android系統(tǒng)運(yùn)行中都是一致的。

init腳本的關(guān)鍵字可以參考init進(jìn)程的system/core/init/keyword.h文件。

init.rc的使用方法,可以參考說(shuō)明文件system/core/init/readme.txt

如果想要修改啟動(dòng)過(guò)程只需要修改init.c(system/core/init)或者init.rc里的內(nèi)容即可.

如何去寫

Android init.rc (Android init language)

Android 初始化語(yǔ)言由四大類聲明組成 : 行為類 (Actions), 命令類 (Commands) ,服務(wù)類 (Services), 選項(xiàng)類 (Options).

* 初始化語(yǔ)言以行為單位,由以空格間隔的語(yǔ)言符號(hào)組成。 C 風(fēng)格的反斜杠轉(zhuǎn)義符可以用來(lái)插入空白到語(yǔ)言符號(hào)。雙引號(hào)也可以用來(lái)防止文本被空格分成多個(gè)語(yǔ)言符號(hào)。當(dāng)反斜杠在行末時(shí),作為折行符。

* 以 # 開始 ( 前面允許有空格 ) 的行為注釋行。

* Actions 和 Services 隱含聲明一個(gè)新的段落。所有該段落下 Commands 或 Options 的聲明屬于該段落。第一段落前的 Commands 或Options 被忽略。

* Actions 和 Services 擁有獨(dú)一無(wú)二的命名。在它們之后聲明相同命名的類將被當(dāng)作錯(cuò)誤并忽略。

Actions

-------

Actions 是一系列命令的命名。 Actions 擁有一個(gè)觸發(fā)器 (trigger) 用來(lái)決定 action 何時(shí)執(zhí)行。當(dāng)一個(gè) action 在符合觸發(fā)條件被執(zhí)行時(shí),如果它還沒被加入到待執(zhí)行隊(duì)列中的話,則加入到隊(duì)列最后。

隊(duì)列中的 action 依次執(zhí)行, action 中的命令也依次執(zhí)行。 Init 在執(zhí)行命令的中間處理其它活動(dòng) ( 設(shè)備創(chuàng)建 / 銷毀 ,property 設(shè)置,進(jìn)程重啟) 。

Actions 表現(xiàn)形式為:

on

Services

--------

Services 是由 init 啟動(dòng),在它們退出時(shí)重啟 ( 可選 ) 。 Service 表現(xiàn)形式為 :

service [ ]*

...

Options

-------

Options 是 Services 的修飾,它們影響 init 何時(shí)、如何運(yùn)行 service.

critical

這是一個(gè)設(shè)備關(guān)鍵服務(wù) (device-critical service) . 如果它在 4 分鐘內(nèi)退出超過(guò) 4 次,設(shè)備將重啟并進(jìn)入恢復(fù)模式。

disabled

這個(gè)服務(wù)的級(jí)別將不會(huì)自動(dòng)啟動(dòng),它必須被依照服務(wù)名指定啟動(dòng)才可以啟動(dòng)。

setenv

設(shè)置已啟動(dòng)的進(jìn)程的環(huán)境變量 的值

socket [ [ ] ]

創(chuàng)建一個(gè)名為 /dev/socket/ 的 unix domin socket ,并傳送它的 fd 到已啟動(dòng)的進(jìn)程。 必須為 "dgram" 或 "stream". 用戶和組默認(rèn)為 0.

user

在執(zhí)行服務(wù)前改變用戶名。當(dāng)前默認(rèn)為 root. 如果你的進(jìn)程需要 linux 能力,你不能使用這個(gè)命令。你必須在還是 root 時(shí)請(qǐng)求能力,并下降到你需要的 uid.

group [ ]*

在執(zhí)行服務(wù)前改變組。在第一個(gè)組后的組將設(shè)為進(jìn)程附加組 ( 通過(guò) setgroups()). 當(dāng)前默認(rèn)為 root.

oneshot

在服務(wù)退出后不重啟。

class

為 service 指定一個(gè)類別名。同樣類名的所有的服務(wù)可以一起啟動(dòng)或停止。如果沒有指定類別的服務(wù)默認(rèn)為 "default" 類。

onrestart

當(dāng)服務(wù)重啟時(shí)執(zhí)行一個(gè)命令。

Triggers

--------

Triggers( 觸發(fā)器 ) 是一個(gè)字符串,可以用來(lái)匹配某種類型的事件并執(zhí)行一個(gè) action 。

boot

這是當(dāng) init 開始后執(zhí)行的第一個(gè)觸發(fā)器 ( 當(dāng) /init.conf 被加載 )

=

當(dāng) property 被設(shè)為指定的值 時(shí)觸發(fā)。

device-added-

device-removed-

當(dāng)設(shè)備節(jié)點(diǎn)被添加或移除時(shí)觸發(fā)。

service-exited-

當(dāng)指定的服務(wù)存在時(shí)觸發(fā)

Commands

--------

exec [ ]*

Fork 并執(zhí)行一個(gè)程序 (). 這將被 block 直到程序執(zhí)行完畢。最好避免執(zhí)行例如內(nèi)建命令以外的程序,它可能會(huì)導(dǎo)致 init 被阻塞不動(dòng)。

export

設(shè)定全局環(huán)境變量 的值 ,當(dāng)這個(gè)命令執(zhí)行后所有的進(jìn)程都可以取得。

ifup

使網(wǎng)絡(luò)接口 聯(lián)機(jī)。

import

解析一個(gè) init 配置文件,擴(kuò)展當(dāng)前配置文件。

hostname

設(shè)置主機(jī)名

chmod

改變文件訪問權(quán)限

chown

改變文件所屬和組

class_start

當(dāng)指定類別的服務(wù)沒有運(yùn)行,啟動(dòng)該類別所有的服務(wù)。

class_stop

當(dāng)指定類別的服務(wù)正在運(yùn)行,停止該類別所有的服務(wù)。

domainname

設(shè)置域名。

insmod

加載該路徑 的模塊

mkdir [mode] [owner] [group]

在 創(chuàng)建一個(gè)目錄 , 可選選項(xiàng) :mod,owner,group. 如果沒有指定,目錄以 755 權(quán)限, owner 為 root,group 為 root 創(chuàng)建 .

mount

[ ]*

嘗試 mount 到目錄

. 可以用 mtd@name 格式以命名指定一個(gè) mtd 塊設(shè)備。 包含"ro","rw","remount","noatime".

例如:

mount -t vfat -o fmask=0000,dmask=0000,rw,flush,noatime,nodiratime /dev/block/mmcblk1p1 /SD1

chown system system /SD1

chmod 0777 /SD1

mount -t vfat -o fmask=0000,dmask=0000,rw,flush,noatime,nodiratime /dev/block/mmcblk1p6 /SD3

chown system system /SD3

chmod 0777 /SD3

setkey

暫時(shí)沒有

setprop

設(shè)置系統(tǒng) property 的值 .

setrlimit

設(shè)置 resource 的 rlimit.

start

啟動(dòng)一個(gè)沒有運(yùn)行的服務(wù)。

stop

停止一個(gè)正在運(yùn)行的服務(wù)。

symlink

創(chuàng)建一個(gè) 的符號(hào)鏈接到

sysclktz

設(shè)置系統(tǒng)時(shí)區(qū) (GMT 為 0)

trigger

觸發(fā)一個(gè)事件。用于調(diào)用其它 action 。

write [ ]*

打開 的文件并寫入一個(gè)或多個(gè)字符串。

Properties

----------

Init 會(huì)更新一些系統(tǒng) property 以提供查看它正在干嘛。

init.action

當(dāng)前正在執(zhí)行的 action, 如果沒有則為 ""

init.command

被執(zhí)行的命令,如果沒有則為 ""

init.svc.

命名為 的服務(wù)的狀態(tài) ("stopped", "running", "restarting")

init.rc 示例 :

-----------------

# not complete -- just providing some examples of usage

#

on boot

export PATH /sbin:/system/sbin:/system/bin

export LD_LIBRARY_PATH /system/lib

mkdir /dev

mkdir /proc

mkdir /sys

mount tmpfs tmpfs /dev

mkdir /dev/pts

mkdir /dev/socket

mount devpts devpts /dev/pts

mount proc proc /proc

mount sysfs sysfs /sys

write /proc/cpu/alignment 4

ifup lo

hostname localhost

domainname localhost

mount yaffs2 mtd@system /system

mount yaffs2 mtd@userdata /data

import /system/etc/init.conf

class_start default

service adbd /sbin/adbd

user adb

group adb

service usbd /system/bin/usbd -r

user usbd

group usbd

socket usbd 666

service zygote /system/bin/app_process -Xzygote /system/bin --zygote

socket zygote 666

service runtime /system/bin/runtime

user system

group system

on device-added-/dev/compass

start akmd

on device-removed-/dev/compass

stop akmd

service akmd /sbin/akmd

disabled

user akmd

group akmd

調(diào)試

---------------

默認(rèn)情況下, init 執(zhí)行的程序輸出的信息和錯(cuò)誤到 /dev/null. 為了 debug ,你可以通過(guò) Android 程序 logwrapper 執(zhí)行你的程序。這將復(fù)位向輸出 / 錯(cuò)誤輸出到 Android logging 系統(tǒng) ( 通過(guò) logcat 訪問 ) 。

===============================================================

Android——init.rc腳本

在Android中使用啟動(dòng)腳本init.rc,可以在系統(tǒng)的初始化中進(jìn)行簡(jiǎn)單的操作。

init.rc啟動(dòng)腳本路徑:system/core/rootdir/init.rc

內(nèi)容:

Commands:命令

Actions:動(dòng)作

Triggers:觸發(fā)條件

Services:服務(wù)

Options:選項(xiàng)

Properties:屬性

Commands是一些基本操作。如:

mkdir /system

mkdir /data 0771 system system

mkdir /persist 0771 system system

devwait /dev/block/mmcblk0p12

mount ext3 /dev/block/mmcblk0p

Action表示一系列命令,通常在Triggers中調(diào)用,如:

on init //表示一個(gè)觸發(fā)條件

sysclktz 0

loglevel 3

# setup the global environment

export PATH /sbin:/system/sbin:/system/bin:/system/xbin

export LD_LIBRARY_PATH /system/lib

export ANDROID_BOOTLOGO 1

Services通常表示啟動(dòng)一個(gè)可執(zhí)行程序,Options是服務(wù)的附加內(nèi)容,用于配合服務(wù)使用。

service vold /system/bin/vold //vold是服務(wù)名稱,/system/bin/vold是所對(duì)應(yīng)的可執(zhí)行程序。

socket vold stream 0660 root mount //socket是配合服務(wù)使用的選項(xiàng)

ioprio be 2

service netd /system/bin/netd

socket netd stream 0660 root system

配合服務(wù)使用的選項(xiàng)有socket,user,group,oneshot。

oneshot表示該服務(wù)只啟動(dòng)一次,而如果沒有oneshot選項(xiàng),這個(gè)可執(zhí)行程序?qū)⒁恢贝嬖凇绻蓤?zhí)行程序被殺死,則會(huì)重新啟動(dòng)。

Properties是系統(tǒng)中使用的一些值,可以進(jìn)行設(shè)置和讀寫。

setprop ro.HIDDEN_APP_MEM 5120 //setprop用于設(shè)置屬性

setprop ro.CONTENT_PROVIDER_MEM 5632

setprop ro.EMPTY_APP_MEM 6144

...

on property:ro.kernel.qemu=1 //on property用于判斷屬性

start adbd

這里的屬性在整個(gè)android系統(tǒng)運(yùn)行中都是一致的。

init腳本的關(guān)鍵字可以參考init進(jìn)程中的system/core/init/keyword.h文件。如:

KEYWORD(chroot, COMMAND, 1, do_chroot) //chroot是命令,do_chroot()是調(diào)用的函數(shù),這個(gè)函數(shù)在init進(jìn)程中的system/core/init/builtins.c文件中定義。

例如:

service akmd /system/bin/logwrapper /sbin/akmd

有哪些 Android 大blog 值得推薦

android大的著名的blog,我知道的是洪洋的,csdn博客有很多的,還有簡(jiǎn)書

中國(guó)安卓系統(tǒng)推廣者有哪些

1.袁輝輝

Android系統(tǒng)工程師,曾就職于IBM、Lenovo,目前就職于小米MIUI系統(tǒng)組,對(duì)Android系統(tǒng)源碼研究的比較透徹,畢竟是系統(tǒng)工程師。博客中有很多高質(zhì)量的源碼分析文章.

博客地址:Gityuan

2.羅升陽(yáng)

江湖人稱老羅(其實(shí)挺年輕的),對(duì)Android系統(tǒng)源碼有頗深的研究,著有《Android系統(tǒng)源代碼情景分析》一書,并且在CSDN上分享了出來(lái),文章內(nèi)容的質(zhì)量也是非常高,非常值得研讀一番,聽說(shuō)他最近在oppo供職。

博客地址:老羅的Android之旅

3.鄧凡平

《深入理解Android 卷》一書的作者,早年是做C++開發(fā)的,后來(lái)轉(zhuǎn)到Android開發(fā),對(duì)Android源碼研究的也比較透徹,也有自己的博客:

博客地址:Innost的專欄

4.郭霖

《第一行代碼》一書的作者,主要分析應(yīng)用層的代碼,將一些開源庫(kù)的分析比較透徹。

博客地址:郭霖的專欄

5.尼古拉斯_趙四

此人擅長(zhǎng)于Android逆向,對(duì)于APK的加固破解有較深入的研究,擅長(zhǎng)從反編譯已經(jīng)被混淆的代碼中尋找線速,再結(jié)合Xposed工具修復(fù)已經(jīng)按照的應(yīng)用的功能

博客地址:尼古拉斯.趙四

GITHUB:尼古拉斯.趙四

6.Weishu

真名可能是叫田維術(shù),博客行文不錯(cuò),很容易讓人明白,也有不少實(shí)實(shí)在在的干貨。

博客地址:Weishu’s Notes

7.zjutkz

對(duì)于Android熱修復(fù),逆向以及RN Weex開發(fā)有一些的研究,博客文章數(shù)量不多,但有些文章寫的還可以。

博客地址:zjutkz’s blog

8.任玉剛


當(dāng)前名稱:android博客,AndrOid
轉(zhuǎn)載來(lái)源:http://weahome.cn/article/hodsoh.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部