⑴ android應用程序怎樣獲取讀取系統文件的許可權
1、必須是Android系統開發人員,否則你無法修改init.rc等文件。 2、你的應用程序必須要獲得system許可權。
在應用層 你要想用代碼獲得系統文件許可權,除非你手機root了
要麼你自己坐rom。。。。 自己修改 init,rc
具體可以參考這篇博文::blog.sina../s/blog_5f35912f0100w4ld.
可以參考如下內容:
按照 Simon 的文章中提到的,應用程序有以下兩種辦法臨時獲得 root 許可權:
1) 實現一個 init 實現一個 Service ,來幫助 Android 應用程序執行 root 許可權的命令。
2) 實現一個虛擬設備,這個設備幫助 Android 應用程序執行 root 許可權的命令。
第二種辦法我這里沒有嘗試,暫時也不會。這里講講我在實現第一種辦法做擾物的過程和遇到的一些問題。
1. 將我們要執行的命令寫成腳本,或者可執行程序。
下面是我的腳本 ifconfig_test.sh :
# ! /system/bin/sh
ifconfig
注意: 腳本的第一行必須為 # ! /system/bin/sh ,否則無法執行,通過 dmesg 可以查看到信息內容為cannot execve ./ifconfig_test.sh: Exec format error
授權管理----允許Re獲取許可權。
Root是獲取手機的管理員用戶帳戶,它可以訪問和修改手機操作系統里幾乎所有的文件,這樣操作有可能影響到手機的穩定性,導致出現人為性故障現象,如死機、重啟等。依據「消費者三包規定」Root屬於修改操作系統軟體,不屬於包修范圍李轎。
public boolean onTouchEvent(android.view.MotionEvent event) { int x = event.getX(); int y = event.getY(); 多點觸摸時 假如是第i個點 int x = event.getX(i); int y = event.getY(i); 坐標就是 P(x,y) }
下載並安裝好騰訊手機管家PC版之後,打開該軟體並進入工具箱,你會發現「一鍵ROOT」和「KingRoot」兩款工具。通過USB 將手機同電腦連接後,無論選擇那純液款工具,用戶都可以通過簡單的滑鼠點擊,完成之前難以達成的任務。選擇「一鍵ROOT」按鈕後,應用工具將智能匹配手機系統,尋找最適合該手機的ROOT方案,幾分鍾之後,用戶手機即可成功獲得ROOT許可權。
Android應用程序獲得root許可權
在獲取root許可權後可以批量卸載系統自帶應用
並且可以批量備份,在卸載系統應用之前先備份一次
然後就可以安心卸載系統自帶應用了,
我一直是在用應用寶的手機管理軟體在工具
箱的常用工具中找到一鍵ROOT工具,
點擊啟動該工具便可以輕松的實現手機一鍵ROOT。
此外,你還可以點擊一鍵優化按鈕來優化
手機建議一鍵優化,選擇您需要的單個優化項,如垃圾緩存清理。
你可以嘗試安裝Kingroot授權管理軟體,或者安裝一鍵root大師軟體進行root操作,只要你嘗試root操作,一定可以root成功的。
Root許可權的獲取方式: 1.用手機連接電腦,下載一鍵root工具。 2.下載成功後,打開一鍵ROOT軟體。會出現root准備,點擊下一步,正式開始root。 3.檢查root條件,要是需要文件備份的話,一定要備份後。點擊開始ROOT。 4.root正式開始,需要幾鍾左右時間,期間可能會重啟數次,root就會完成。 5.root完成後,就可以隨意刪除手機中的垃圾應用了包括系統應用。
Android system 要獲取Root許可權, 方法眾多。
例如 : Bai Root, Amazing Root ...都可以
現以 BAIDU ROOT介紹步驟, 操作如下 :
1、機子下載 BAIDU ROOT(APK版)。
2、運作 BAIDU ROOT, 點選 "一鍵獲取Root"。
3、機子 Root 成功了, 自動重啟 。
PS:建議Rooting前備份手機數據。 Rooting過程約需時5min。
你可以試試刷機精靈,蘑菇雲,深度刷機,Z4ROOT,甜椒等等,,,注意ROOT後,必須安裝SUPERUSER,用於許可權的管理,否則將沒有任何作用,,,其實手機端也有很多,你可以到安卓軟體站搜索ROOT,下載並安裝,進行ROOT破解即可,,,不過解決方法會少很多,最好是電腦端ROOT破解。。。。刷機工具,可以到XIAZAIBA下載、。、
⑵ adb環境下的root許可權獲取
這個是和設備的系統有關系的,一般的debug 版本的系統可以開root,正式出廠的都沒有的
adb的root許可權是在system/core/adb/adb.c中控制.主要根據ro.secure以及ro.debuggable等systemproperty來控制.默認即檔ro.secure為0... 博文 來自: sir_...查看全部2021年1月3日-csdn已為您找到關於adb獲得root許可權相關內容,包含adb獲得root許可權相關文檔代碼介紹、相關教程視頻課程,以及相關adb獲得root許可權問答內容。為您解決當...
2021年7月1日-adb獲取root許可權----adb命令集合:一、獲取root許可權,給文件以讀寫許可權 步驟:1、手機進行root; 2、cmd 進入命令行 運行adbshell命令(adb已配置到環境變...
2016年8月10日-當你獲取root許可權後通過adb訪問 /data/data目錄: 1、進入shell模式adbshell 2、su 切換到root用戶 su 3、修改/data/data目錄的許可權為 777即可 chmod 777 /...
2013年8月15日-adb裡面有個root命令,可以用來獲取root許可權。Android守護進程adbd啟動時,會調用create_local_service_socket()創建socket套接字, fd = service_to_fd(...
⑶ 安卓手機怎麼開root許可權
在手機上獲取root許可權方法如下:
工具:華為P40、EMUI10.1.0、神話一鍵root。
1、打開root軟體,選擇開始root。
root許可權介紹
root許可權,系統許可權的一種,也叫根許可權,與SYSTEM許可權可以理解成一個概念,但高於Administrator許可權,root是Linux和unix系統中的超級管理員用戶帳戶。
該帳戶擁有整個系統至高無上的權力,拆弊李所有對象他都可以操作。獲得root許可權之後就意味著已經獲得了系統的最高許可權,這時候你可以對系統中的任何文件(包括系統文件)執行所有增、刪、改、查的操作。
⑷ 如何使Android應用程序獲得root許可權
您好,很高興為您解答。
一般來說, Android 下的應用程序可以直接得到的最大的許可權為system,如果我們需要在程序中執行某些需要 root 許可權的命令,如 ifconfig 等,就需要 root 許可權了。按照 Simon 的文章中提到的,應用程序有以下兩種辦法臨時獲得 root 許可權:
1)實現一個 init 實現一個 Service ,來幫助 Android 應用程序執行 root 許可權的命令。
2) 實現一個虛擬設備,這個設備幫助 Android 應用程序執行 root 許可權的命令。
講下第一種辦法的過程和遇到的一些問題。
1.將我們要執行的命令寫成腳本,或者可執行程序。
下面是我的腳本 ifconfig_test.sh :
# ! /system/bin/sh
ifconfig
注意: 腳本的第一行必須為 # ! /system/bin/sh ,否則無法執行,通過 dmesg 可以查看到信息內容為 cannot execve ./ifconfig_test.sh: Exec format error
也可以採用 C/C++ 編寫需要執行的命令或者程序,並在編譯 image 的時候編譯成可執行程序。
2. 在 init.rc 中注冊 service
Android 中的 service 需要在 init.rc 中注冊, Init.rc 中定義的 Service 將會被 init 進程創建,這樣將可以獲得root 許可權。當得到相應的通知(通過屬性設置)後, init 進程會啟動該 service 。
本文中注冊的內容如下:
service ifconfig_test /system/etc/ifconfig_test.sh
oneshot
disabled
其中, oneshot 表示程序退出後不再重新啟動, disabled 表示不在系統啟動時啟動。
注意: 這里 service name 不能超過 16 個字元。我之前的 service name 由於定義的比較長, 18 個字元,設置屬性通知 service 啟動後查看 dmesg 可以看到提示: init: no such service 。查看 /system/core/init/parser.c 的源代碼,在 parse_service->valid_name 函數中可以看到如下內容: if (strlen(name) > 16) { return 0; } ,證明service 的名字的確不能超過 16 個字元。
3.將 Android 應用程序提升為 system 許可權
既然應用程序可以通過啟動 service 獲得 root 許可權,那麼豈不是很不安全。 Android 考慮到了這點,規定只有system 許可權的應用程序才能設置屬性,通知 service 啟動。
4.在應用程序中添加屬性設置代碼
對於 Android 來說,應用程序通知 init 啟動 service 是通過設置系統屬性來完成的,具體為設置 System 系統屬性 「ctl.start」 為 「ifconfig_test」 ,這樣 Android 系統將會幫我們運行 ifconfig_test 這個 service了。
對該系統屬性的設置有三種方法,分別對應三種不同的應用程序:
1) java 代碼
Android 在 Java 庫中提供 System.getProperty 和 System.setProperty 方法, Java 程序可以通過他們來設置和獲得屬性。代碼如下:
SystemProperties.set("ctl.start", "ifconfig_test");
上面的代碼是通知 Android 執行 ifconfig_test service ,如果需要查詢當前 service 執行的狀態,如是否執行完畢,可以通過如下代碼查詢:
ret = SystemProperties.get("init.svc. ifconfig_test ", "");
if(ret != null && ret.equals("stopped"))
{
return true;
}
2) JNI 代碼
當編寫 NDK 的程序時,可以使用 property_get 和 property_set 這兩個 API 來獲得和設置屬性。使用這兩個API 必須要包含頭文件 cutils/properties.h 和鏈接 libcutil 庫。
3) Shell 腳本
Android 提供了命令行 setprop 和 getprop 來設置和獲取屬性,他們可以在腳本中被使用。
由於我的程序是在 JNI 中調用腳本,腳本中又執行 ifconfig ,因此我將設置屬性的部分放在了腳本中完成,代碼如下:
setprop ctl.start ifconfig_test
#wait for the service until it stops
ret=1
while [ $ret -ne 0 ]
do
getprop | grep "$ENABLE_MAPPER_SRV" | grep stopped
ret=$?
done
通過上面 4 個步驟, Android 應用程序就獲得了 root 許可權,更具體的說,是在執行我們需要執行的命令時臨時獲得了 root 許可權。
如若滿意,請點擊右側【採納答案】,如若還有問題,請點擊【追問】
希望我的回答對您有所幫助,望採納!
~ O(∩_∩)O~
⑸ 手機怎麼獲取root許可權
1、在手機裡面找出【設置】按鈕並將它打開。
(5)android獲取root許可權代碼擴展閱讀
root許可權作用
1、可以備份手機系統和軟體應用等重要的私人資料(包括可以備份聯系方式、簡訊、手機系統等),這樣即使手機出現故障丟失了相關數據,也可以在備份中還原。
2、使用高級的程序,例如RE管理器、省電大師、甜椒刷機助手等等,
3、可以修改手機系統,也就是root後可以給安卓手機刷機,體驗不同安卓系統的樂趣。修改系統的內部程序和文件,如修改build.prop來DIY手機信息
4、可以把一些程序應用安裝在SD卡上(Android2.2以下默認是不支持的),減輕手機負擔。
5、可以卸載州握芹系統程序(需謹慎使用),可以刪除原廠系統自帶的感覺沒什麼用的軟體。
6、可以管理開機啟動項,禁用不皮陸需要後台運行的程序,進行手機省電優化。
⑹ 求問android怎麼在代碼里獲得系統文件的讀寫許可權
本來以為就沒有辦法在應用程序這一層改系統時間了,後來在網上搜了好久,知道這個目的還是可以達到的。
第一個方法簡單點,不過需要在Android系統源碼的環境下用make來編譯:
1. 在應用程序的AndroidManifest.xml中的manifest節點中加入
android:sharedUserId="android.uid.system"這個屬性。
2. 修改Android.mk文件,加入LOCAL_CERTIFICATE := platform這一行
3. 使用mm命令來編譯,生成的apk就有修改系統時間的許可權了。
第二個辦法麻煩點,不過不用開虛擬機跑到源碼環境下用make來編譯:
1. 同上,加入android:sharedUserId="android.uid.system"這個屬性。
2. 使用eclipse編譯出apk文件,但是這個apk文件是不能用的。
3. 用壓縮軟體打開apk文件,刪掉META-INF目錄下的CERT.SF和CERT.RSA兩個文件。
4. 使用目標系統的platform密鑰來重新給apk文件簽名。這步比較麻煩,
首先找到密鑰文件,在我的Android源碼目錄中的位置
是"build argetproctsecurity",下面的platform.pk8和platform.x509.pem
兩個文件。
然後用Android提供的Signapk工具來簽名,signapk的源代碼是
在"build oolssignapk"下,
用法為"signapk platform.x509.pem platform.pk8 input.apk output.apk",
文件名最好使用絕對路徑防止找不到,也可以修改源代碼直接使用。
這樣最後得到的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,不過放到G3上安裝直接提示"Package ... has no signatures that match those in shared user android.uid.system",這樣也是保護了系統的安全。
Java代碼 1、必須是Android系統開發人員,否則你無法修改init.rc等文件。 2、你的應用程序必須要獲得system許可權。 在應用層 你要想用代碼獲得系統文件許可權,除非你手機root了 要麼你自己坐rom。。。。 自己修改 init,rc
方法/步驟
1
首先找到你要操作的文件夾,這里用一個音效卡相關的文件夾做例子。選中文件夾。右擊它。選擇文件的屬性,安全--->高級。
2
更改所有者,如圖所示。在輸入對象名稱那兒,輸入你的賬戶名稱,我的是微軟賬戶。輸入完之後確定。
3
回到剛才的界面,你會看到所有者已經改變了,變成了你的賬號。然後確定退出,回到文件夾。(一定要確定後退出回到文件中,才能進行下一步)
4
再次回到剛才的界面。禁止所有繼承。
5
添加用戶。輸入賬號,我輸入的是微軟賬號。輸入後確定。
通過第三方軟體獲得Root許可權,可以訪問和修改手機操作系統里幾乎所有的文件,但這樣操作有可能影響手機的穩定性,出現死機、重啟等人為性故障。
另外獲取許可權後一般對存儲器和CPU等主板上主要部件引起不良。Root屬於修改操作系統軟體,按照條例不屬於包修范圍。為了提升顧客滿意度,對Root顧客提供免費升級固件服務,如果Root已影響到手機硬體需要更換主板,則需要收取主板費用。
若您的機器Root後需將機器恢復到原來的系統版本,請將機器送到服務中心,由售後工程師幫助檢查處理。自行將設備恢復出廠設置是無法取消Root許可權的。
對於已經獲取所有許可權的文件,建議大家還是恢復到原來的狀態。今天就跟大家分享一下如何恢復系統文件的默認許可權,Windows 7和Windows 8系統都是一樣的操作步驟。這里以平時最常修改的hosts文件為例,下圖顯示已獲取hosts文件所有許可權。已獲得所有許可權的hosts文件恢復許可權有點類似於於逆向操作,首先點選Administrators組(上圖藍色條),然後點擊下方的「高級」按鈕,切換到「所有者」標簽。高級安全設置-所有者在上面的窗口中,點擊「編輯」按鈕打開新窗口來更改所有者。編輯所有者到這一步,你會發現可更改的所有者並沒有當初替換時的TrustedInstaller,怎麼辦?別急,點擊「其他用戶或組」來添加它。在新開的窗口裡,輸入:NT SERVICE\TrustedInstaller,注意前面的NT SERVICE一定要加上,否則系統不認。添加TrustedInstaller用戶完成後點擊確定回到上一窗口,此時會看到TrustedInstaller用戶出現了,接下去就是選擇它,然後一路確定退出各個窗口。文件所有權恢復到默認狀態
File類裡面就有canRead,canWrite,canExecute方法啊。 查看原帖>>
麻煩採納,謝謝!
用re
先耐心的把這里的帖子看上幾頁,再多網路網路資料,不要手機一上手就玩這些要root許可權的內容,容易出問題,到時候問題越來越多。。。建議至少2周後再做這些事情,對你會很有幫助。 查看原帖>>
對於一般文件來說,是不需要開啟administrator賬戶的,只需要一個簡單的辦法就OK啦!比如說,對待下面的這種類型的文件夾。
2
我們只需要擊右鍵,選擇「管理員取得所有權」即可。
3
對於一些程序文件來說,只需要你擊右鍵,選擇「以管理員身份運行」,也是一個非常便捷的獲得管理員許可權的辦法。
END
開啟Administrator賬戶的方法
Windows 7系統中,administrator賬戶並不是默認開啟的,那麼就需要我們手動開啟,這也不是很難的啦!對計算機圖標,擊右鍵,選擇管理。
打開界面後,選擇本地用戶和組,單擊用戶,選擇administrator賬戶即可。
3
打開,administrator賬戶之後,按照以下的操作來進行就行了。
4
這樣,在開始登陸的界面,即可以出現administrator賬戶了,選擇此賬戶即可獲得管理員最高許可權,不過建議一般來說此賬戶還是不要開啟的好,如果此賬戶受損,再創建帳戶很容易失敗。還有,在第一次開啟此賬戶時,是不需要密碼的。
這個問題其實LBE已經解決了。 1.在2012隱私保護版中,每次運行時請求系統root,創建一個開機啟動服務libload.so,專門用於處理lbe自身的root請求。 2.在2013免root版中,首次運行時自動獲取系統root,並把破解過的su文件復制到/system/xbin/.sv ,然後給6755的許可權,專門用於處理lbe自身的root請求。 上述兩種方案,均為程序自帶root管理,用於解決其自身root請求。 以下代碼即為方案2的原理,附件中為修改過的su文件。 ******************************************* 安卓的su文件,基本原理為 1234567if (pid=DB(Allow)) then "get uid=0 root" 白名單,程序獲取rootelseif (pid=DB(Disable)) Return 黑名單,返回空else View"superuser.active" 資料庫無記錄,「授權管理」彈出root請求窗口endif修改後的su文件 1if (pid<>"") then "get uid=0 root" 無條件,返回root********************************************** 我反編譯b.apk,然後把java應用調用runtime.exec("su")的代碼全部改為runtime.exec("sa"), 然後重新打包簽名好。安裝這個軟體。 用RE文件管理器把上面附件的su改名為sa,復制到/system/xbin/sa並改許可權rwsx-rsx-r。 以後使用b.apk,獲取root許可權沒有任何提示。 su.zip大小:249.85K 已經過網路安全檢測,放心下載 點擊下載下載量:133