开发者

Can't access data folder in the File Explorer of DDMS using a Nexus One!

开发者 https://www.devze.com 2023-01-08 00:55 出处:网络
I have my Nexus One connected with the USB. When I visit the File Explorer of the DDMS, if I click on the \"data\" folder the little plus near the name \"data\" disappear for 2-6 seconds and then rea

I have my Nexus One connected with the USB.

When I visit the File Explorer of the DDMS, if I click on the "data" folder the little plus near the name "data" disappear for 2-6 seconds and then reappear but the contenct of the folder "data" is not showed!

开发者_开发技巧

Here some other information:

  • the folder data has permissions drwxrwx--x

  • the OS of my PC is Windows XP

  • Eclipse v. 3.5.2

  • Android SDK 1.6


If the adbd daemon is running as root, you can browse /data using adb-based tools such as the DDMS file explorer or the adb shell.

If it's not, you can access a few files under /data and its children directly by their full path names, but you cannot browse (or 'cd' to) most of the folders, including /data itself.

"rooting" as an unofficial process means varying things and produces varying results - ie, adbd may or may not run as root.

If ro.secure is set to 0 in the startup scripts such as /init.rc, adbd will run as root, but that may not be a good idea on a user device. It is set to 0 on the emulator, and that's why you can browse /data there.

Finally, note that /init.rc is usually contained in a ramdisk image packed onto the kernel - you can't really edit it on the phone but would have to modify the image offline, re-attach it to the kernel, and re-flash them. Though if you have some sort of working 'su' hack you may be able to change the property temporarily and restart adbd.


In this link (http://denniskubes.com/2012/09/25/read-android-data-folder-without-rooting/) Dennis Kubes shows a method for accessing your application's data folder without root access.

Turns out there is a simple solution, the run-as command.

run-as com.your.package ls -l /data/data/com.your.package
run-as com.your.package rm /data/data/com.your.package/databases/mydatabase.db

That will allow you to run commands as your app. You can also use run-as in interactive mode.

run-as com.your.package
shell@android:/data/data/com.your.package $ ls
cache
databases
lib
shared_prefs
rm databases/mydatabase.db

Interactive mode will drop you into the data folder for your app. You can navigate from there.


I don't think anyone really understands this question. Giorgio can use the DDMS File Explorer to browse the ./data folder on his phone. Pentium10 talks about needing root access on the phone.

Well I a retail Nexus One and a developer Nexus. I have always been able to use DDMS File Explorer to browse the ./data folder on my developer phone but not my retail phone. So I rooting my retail phone would help. I didn't.

So the bottom line is there is something different about the retail and developer phones. Until more research is done you won't be able to browse the data folder on your phone.

Hope this helps.

0

精彩评论

暂无评论...
验证码 换一张
取 消