Ⅰ androidroot/system/etc無法修改
在沒有root的前提下,system分稿銷滑區為只讀,若要動態修改該鍵臘分區下的文件,可以按照下面流程實現:
1、寫執行腳本,這里以修改system/etc/hosts文件為例在/device/mediatek/mt67xx目錄下創建名為modifyhosts.sh的文件。
2、配置腳本編譯後的路徑,在/device/mediatek/mt67xx/device.mk文件中配置腳本編譯後的路徑。
3、配置啟動腳本的服務,/system/core/rootdir/init.rc文件為系統啟動初始化文件,最先載入,配置sh腳本啟動服務。
4、定義主體的type,在/external/sepolicy目錄下新建一個modifyhosts.te文件,在該文件中定義一個名為modifyhosts的domain以及名為modifyhosts_exec的type。
5、定義客體的type,remount-sys進程對應的可執行文件是/system/bin/modifyhosts.sh,則在/external/sepolicy/file_contexts文件中添加/system/bin/modifyhosts.sh文件的安全上下文。
6、添加SELinux許可權,由於不知道需要添加哪些斗笑許可權,故按上面5個步驟操作完後,可以先編譯版本刷機,之後在adbshell下執行。
Ⅱ .mk是什麼格式的文件,用什麼軟體打開
.mk文件是 makefile 文件,makefile定義了一系列的規則來指定,哪些文件需回要先編譯,哪些文件需要後答編譯,哪些文件需要重新編譯,甚至於進行更復雜的功能操作,因為makefile就像一個Shell腳本一樣,其中也可以執行操作系統的命令。
makefile帶來的好處就是——「自動化編譯」,一旦寫好,只需要一個make命令,整個工程完全自動編譯,極大的提高了軟體開發的效率。make是一個命令工具,是一個解釋makefile中指令的命令工具,一般來說,大多數的IDE都有這個命令,比如:Delphi的make,Visual C++的nmake,Linux下GNU的make。可見,makefile都成為了一種在工程方面的編譯方法。
Ⅲ android.mk是在什麼情況下生成的
當你需要使用JNI的時候,你需要創建一個native工程。Android.mk就是一個makefile配置文件,幫你把C/C++的代碼編譯成動態庫so的。
創建的方式有兩種:
在工程根目錄裏手動創建一個目錄叫jni,在裡面新建一個Android.mk,然後創建c,cpp文件,把他們配置到Android.mk里。
右鍵工程,選擇Android Tools->Add Native Support自動生成。
(3)mk文件擴展閱讀:
創建Android庫
Android 庫在結構上與 Android 應用模塊相同。可以提供構建應用所需的一切內容,包括源代碼、資源文件和 Android 清單。
不過,Android 庫將編譯到可以用作 Android 應用模塊依賴項的 Android 歸檔 (AAR:Android Archive Resource) 文件,而不是在設備上運行的 APK。
與 JAR 文件不同,AAR 文件可以包含 Android 資源和一個清單文件,這樣,除了 Java 類與方法外,還可以捆綁布局和可繪制對象等共享資源。
庫模塊在以下情況下非常有用:
構建使用某些相同組件(例如 Activity、服務或 UI 布局)的多個應用。
構建存在多個 APK 變體(例如免費版本和付費版本)的應用並且需要在兩種版本中使用相同的核心組件。
Ⅳ android mk文件怎麼打開
可以把這個Makefile文件理解成一個編譯配置文件,它保存著如何編譯的配置信息,專即指導編譯器如何屬來編譯程序,並決定編譯的結果是什麼。而在Android下的Android.mk文件也是類型的功能,顧名思義,從名字上就可以猜測得到,Android.mk文件是針對Android的Makefile文件.具體來說:該文件是GNU Makefile的一小部分,會被編譯系統解析一次或多次。你可以在每一個Android.mk file中定義一個或多個模塊,你也可以在幾個模塊中使用同一個源代碼文件。編譯系統為你處理許多細節問題。