I'm working with someone who has a 1st generation Kindle Fire to test Amazon's in-app purchasing. According to Amazon's docs, we need to create a response file named /mnt/sdcard/amazon.sdktester.json on the device. My colleague prepared the .json file and tried to transfer it to the device via a USB connection. However, when he connects his device to his Mac, the root folder of the mounted device does not have a /mnt folder. He also tried mounting it on a virtual Windows machine on his Mac, with the same result.
I'm assuming that for some reason the Kindle Fire is mounted in a way that does not provide access to the root folder of the device. Can anyone recommend a way around this, or some other way to put a file into /mnt/sdcard/ on my colleague's Kindle Fire?
If there's a way to directly type in the file on his Kindle Fire, that would be acceptable; it's just a few lines of text. All suggestions are welcome.
When you say "transfer via USB connection", do you mean that you mount the device like an external drive, or are you accessing it via ADB? You will need to access the device via adb to get to the root folders.
So we figured it out. The problem, as Nick Davis pointed out, is that the root folder is only visible when connecting through adb. My colleague does not have a development environment and does not want to install it.
Instead, he installed the Text Edit app on his device, mailed the text to himself, copied it into a new document and saved the file directly to /sdcard/android.sdktester.json (which is an alias for /mnt/sdcard/android.sdktester.json).
This was practical only because there wasn't a lot of text involved. For large files, I suppose he could have copied them to a different folder through the USB connection and used a file manager like #ssantos suggested in a comment to move it to the right folder.
Related
When I connect my android phone via USB to my PC with Windows 10, it shows up as This PC\SAMSUNG-SM-G925A\Phone in the browser. However, I'm not able to access the directories on the device with that string. Does anyone know what directory should I use? I have Windows based ActivePerl. For starters, is there a drive letter (if so, how can I find out) that points to the root directory on that phone? Thx!
Found a work around by copying the files (manually) to a tmp directory on C: drive and process it from there. Not elegant, but serves the purpose for now.
I'm trying to view the files and folders at root level on an android device using USB Debugging mode and windows. Is this possible? Phone is rooted.
I've downloaded a file explorer app which allows me to view it on the phone itself.
My main goal is to copy the mmssms.db from the phone.
Droid Explorer
http://de.codeplex.com/releases/view/612392
Window Apps:
Explorer:
SQLite Manager:
I was looking long and hard for a solution to this problem and the best I found was a root FTP server on the phone that you connect to on Windows with an FTP client like FileZilla, on the same WiFi network of course.
The root FTP server app I ended up using is FTP Droid. I tried a lot of other FTP apps with bigger download numbers but none of them worked for me for whatever reason. So install this app and set a user with home as / or wherever you want.
2021 EDIT: FTP Droid isn't being updated and doesn't work on modern Android versions, now I use primitive FTPd which is open source on Github
Then make note of the phone IP and connect with FileZilla and you should have access to the root of the phone. The biggest benefit I found is I can download entire folders and FTP will just queue it up and take care of it. So I downloaded all of my /data/data/ folder when I was looking for an app and could search on my PC. Very handy.
You can use Eclipse DDMS perspective to see connected devices and browse through files, you can also pull and push files to the device. You can also do a bunch of stuff using DDMS, this link explains a little bit more of DDMS uses.
EDIT:
If you just want to copy a database you can locate the database on eclipse DDMS file explorer, select it and then pull the database from the device to your computer.
If you have android, you can install free app on phone (Wifi file Transfer) and enable ssl, port and other options for access and send data in both directions just start application and write in pc browser phone ip and port. enjoy!
Obviously, you'll need a rooted android device. Then set up an FTP server and transfer the files.
We want to install our application on to (thousands of)phones and these phones will be later delivered to clients. Do we have to do this manually? Is there a faster way to do this?
For example, in Windows Mobile, if you put your installation files in a certain folder on SD card and when you insert that SD card to the phone the app is installed automatically to the device. Any similar mechanism on Android?
Thanks in advance.
You can create an update.zip file on an sdcard that will install an application, but you have to boot the phone into recovery mode to run it. I haven't used update.zip this way, but I saw it here: http://www.londatiga.net/it/how-to-create-android-update-zip-package/
Unfortunately it's much more complicated and slow than the old 2577\Autorun.exe method from WindowsMobile.
Other ideas...
ADB + USB hubs: Hook up a bunch of the phones at the same time using USB hubs, run a script to find the device ids with adb devices and execute adb install your_app.apk for each one.
(Requires taking the time to enable USB debugging on each device)
Install from the web: Host the .apk publicly or locally. Now you have to pull up the URL on the phone.
(Requires taking the time to checking that checkbox for installing from unknown sources on each device)
TinyUrl: host the .apk anywhere, shrink the URL, type it into the browser.
QR Code: If the devices happen to have a QR Code Reader like Google Goggles pre-installed, you could save yourself the typing of the URL.
SMS: If all of these phones have service and you have the numbers handy, you could broadcast an SMS to all of them.
Best of luck!
Basically, yeah. See this question for details. You essentially need an army of button-pressers.
I found this:
http://www.harmonyhollow.net/android_injector.shtml
So far it is the best solution I found. I guess it uses adb behind scenes.
When an Android device is plugged in to a PC (through USB?), is the internal file system mapped to a drive letter on the PC? So that one can copy files to and from the Android under Windows?
And, can Emulator simulate the situation when it's plugged in? How?
Thank you in advance!
Yes, it CAN be mapped to a drive letter. It was much easier with something like a Droid X (Android 2.3), since it would show up as a mass storage device (disconnecting the card from your phone in the meantime), but it's also possible on newer phones such as the LG G3 if you're willing to install 2 free programs, which you probably would like to have anyway.
ES File Explorer - Remote Manager (FTP Server)
First, you need a file manager, not only because the built-in one is useless, but also because you need an FTP server. Install "ES File Explorer" on your Android Device. Then in the options, turn on the "Remote Manager" option, which will activate the FTP server and show you its local address like "192.168.1.3:3721. You can now access your phone as an FTP site from your computer when on your local WiFi network.
Net Drive - Remote Drive Mapping Utility
Next, all you have to do is install NetDrive: http://netdrive.net/ It's freeware and seems to be used by a lot of companies, because it lets you map cloud storage to local drives. That will allow you to map your FTP server on your phone as a local drive.
Don't bother trying to map an FTP site with explorer. First, you may run into a problem that's apparently caused by Chrome, where you can't even add an FTP network location. You'll get an unexpected error telling you the path format is invalid. Interestingly, that is solved by opening the registry editor, then under [HKEY_CLASSES_ROOT\ftp] add a key named "ShellFolder" with string value "{E436EBB6-524F-11CE-9F53-0020AF0BA770}". The error will immediately cease occurring, with no restart or any other action required. Just go back in and add the ftp network location. That, however, still does not allow you to map it to a drive letter, which is why you need NetDrive.
As of Android 4, the wise ones have removed USB Mass Storage support for accessing the internal phone memory. So you no-longer get direct block-access (or a driver letter in windows). You can usually choose on the phone between MTP, or PTP (Media / Photo Transfer protocols) for whichever your OS supports better.
If your device has removable storage it should still support USBMS (with a drive letter) for that partition. At least Android still supports that, but your Manufacturer or Carrier-ware may still fail you here.
However, when it comes to the phone memory, there was a trade-off made in Honeycomb. Unified storage prevents wasted space (no more separate storage for phone / data, and having one fill up first and having confused frustrated users trying to move apps to SD, etc). The trade-off requires that:
Android can no longer ever yield up the storage for the host PC to
molest directly over USB.
Initially for Mac and Linux where support for MTP/PTP has been slower, You can use an FTP app on your phone. But now there is an increasing number of Desktop (PC/Mac/Linux) apps that understand and support the MTP or PTP protocols. You just don't get block access and so you can't get a drive letter without some hackery / third party software.
There have been hacks over the years to make FTP or WebDav or some other protocol work behind a windows drive letter, and something like could still work work for these MTP/PTP protocols, but I have yet to see any such consumer usable software for windows.
If your Linux distro doesn't include MTP support, gMTP seems pretty popular.
You can mount the device via USB but (in Win7 at least) it doesn't appear to have its own drive letter; rather it's treated like a camera or another media device. It doesn't mount automatically; you generally need to "opt-in" in the notification area with something like "Turn on USB storage"
Don't know about emulators.
Using Eclipse you can push and pull files to the emulator using the DDMS perspective. Doing similar on a real device, iirc will require root access to the device, at least to get to the 'sensitive' areas.
The SDK tools will also provide a way of push and pull via the command line.
possible with https://github.com/billziss-gh/sshfs-win
difficult finding good sshservers for android, know that at least one works but doesn't autostart at wifi and have to manually restarted, which it was possible to "come home from work, drive is connected"
this server seams to work fine
https://play.google.com/store/apps/details?id=net.xnano.android.sshserver.tv&hl=en_US
Wanted to backup(incremental) android device using Areca backup utility which requires src and dest to have drive paths.
After trying various methods like adb-sync, Syncthing, webDAV, etc. Got it working with ftp sharing.
Download any ftp server app. I used "WiFi FTP Server" by Medha Apps on Playstore to create a ftp server something like this- ftp://username:*#xxx.xxx.xxx.xxx:yyyy where username can be set in app settings and xxx is i.p. with yyyy as port number.
Map ftp URL to drive path by using free app- "DirectNet Drive"
Use the drive as if it's in your own system, though it will be slow being wireless.
I would like to have an application sync itself with some files on a host computer.. Anyone know if this is possible? Eg: When you connect an Android phone to a computer i would like an application on the android system to read some allowed folders on the connected computer. Making it so the user doesn't have to sync files itself.
I ask possible, because i assume it isn't.. for security.
You won't be able to do it solely from the Android end, because Windows doesn't make the local drives available through the USB port like that (unless you have some custom driver on the Windows side).
Your Android device will probably show up to windows as a USB drive. If you have an SD card plugged in, you may see a second drive from the Windows side.
To do something like this, you'd probably need to have software running on the Windows side that did the syncing, and then copy the data from the /sdcard directory on the Android device to wherever you ultimately need it to be.