I\'m developing my first Android application in Eclipse, Win7x64 and am having trouble pulling a SQLite file to inspect what\'s getting in it. I\'m seeing this problem using DD
Restarting Eclipse fixed this for me (File Menu, Restart option).
Are you trying to pull from /data/data/your.application.name
? Are you on a production phone? If so, you may be out of luck; production phones disallow access to that directory.
Are you specifying both the source and destination names?
adb pull /sdcard/name.of.file.db name.of.file.db
adb insists on the destination name being a filename, not a directory; in particular, .
to mean 'put the file in the CWD' won't work.
Other than that, dunno. Your report does sound a bit peculiar.
You may find it useful to try creating an AVD (an emulated device) and deploying to that. AVDs are not production devices and as such you can do things that real phones won't let you, like tinkering in your application's private data area. If this is a permissions problem this will work round it.
A reboot fixed the problem with using the DDMS pull via GUI.
If you run the emulator on a VirtualBox, the problem could be permissions. So, change the permissions from within the running emulator with Alt+F1 and
chmod 775 myfile.db
You just need to adb this secuence of steps and commands:
1- Go to the directory where your platform tools resides.
(Mine is: C:\Program Files (x86)\Android\android-sdk\platform-tools)
2- Click Ctrl + Shitt + Mouse right button and select "Open Command Window here"
(This is to open the command promt, you can also open the command promt and type the command: cd C:\Program Files (x86)\Android\android-sdk\platform-tools)
3- Once the shell is open, type this commands
adb shell su chmod 777 /data /data/data chmod 777 /data/data/package_name_of_your_android_project chmod 777 /data/data/package_name_of_your_android_project/databases
If you typed that, now you can see the databases, and if you click the pull button in the DDMS, then the error arises. But what you need to do is to type this last command:
chmod 777 /data/data/package_name_of_your_android_project/databases/your_database_name
So, these are the full sequence of commands:
adb shell
su
chmod 777 /data /data/data
chmod 777 /data/data/package_name_of_your_android_project
chmod 777 /data/data/package_name_of_your_android_project/databases
chmod 777 /data/data/package_name_of_your_android_project/databases/your_database_name