Can't install Test App on Kindle Fire HD Tablet.

Looking for a little help.

Working on a Mac OS X 10.7.5
Creating apps using Kwik2 and Corona SDK
I installed the Android SDK - ADT Bundle for MAC - which includes Eclipse
I downloaded Java VisualVM - JDK 7 update 10

Want to install my app on Kindle Fire HD 8.9 tablet to test

I have enabled the ADB setting to the ON position my Kindle Fire
I updated the ADB and can see the tablet device’s serial number listed when I run ./adb device command from a Terminal shell.

Unfortunately when I follow the next step ./adb install <path to .apk file> I get this:

Android Debug Bridge version 1.0.31

-d - directs command to the only connected USB device
returns an error if more than one USB device is present.
-e - directs command to the only running emulator.
returns an error if more than one emulator is running.
-s - directs command to the device or emulator with the given
serial number or qualifier. Overrides ANDROID_SERIAL
environment variable.
-p - simple product name like ‘sooner’, or
a relative/absolute path to a product
out directory like ‘out/target/product/sooner’.
If -p is not specified, the ANDROID_PRODUCT_OUT
environment variable is used, which must
be an absolute path.
devices [-l] - list all connected devices
(’-l’ will also list device qualifiers)
connect [:] - connect to a device via TCP/IP
Port 5555 is used by default if no port number is specified.
disconnect [[:]] - disconnect from a TCP/IP device.
Port 5555 is used by default if no port number is specified.
Using this command with no additional arguments
will disconnect from all connected TCP/IP devices.

device commands:
adb push - copy file/dir to device
adb pull [] - copy file/dir from device
adb sync [] - copy host->device only if changed
(-l means list but don’t copy)
(see ‘adb help all’)
adb shell - run remote shell interactively
adb shell - run remote shell command
adb emu - run emulator console command
adb logcat [] - View device log
adb forward - forward socket connections
forward specs are one of:
tcp:
localabstract:
localreserved:
localfilesystem:
dev:
jdwp: (remote only)
adb jdwp - list PIDs of processes hosting a JDWP transport
adb install [-l] [-r] [-s] [–algo --key --iv ]
- push this package file to the device and install it
(’-l’ means forward-lock the app)
(’-r’ means reinstall the app, keeping its data)
(’-s’ means install on SD card instead of internal storage)
(’–algo’, ‘–key’, and ‘–iv’ mean the file is encrypted already)
adb uninstall [-k] - remove this app package from the device
(’-k’ means keep the data and cache directories)
adb bugreport - return all information from the device
that should be included in a bug report.

adb backup [-f ] [-apk|-noapk] [-shared|-noshared] [-all] [-system|-nosystem] [<packages…>]
- write an archive of the device’s data to .
If no -f option is supplied then the data is written
to “backup.ab” in the current directory.
(-apk|-noapk enable/disable backup of the .apks themselves
in the archive; the default is noapk.)
(-shared|-noshared enable/disable backup of the device’s
shared storage / SD card contents; the default is noshared.)
(-all means to back up all installed applications)
(-system|-nosystem toggles whether -all automatically includes
system applications; the default is to include system apps)
(<packages…> is the list of applications to be backed up. If
the -all or -shared flags are passed, then the package
list is optional. Applications explicitly given on the
command line will be included even if -nosystem would
ordinarily cause them to be omitted.)

adb restore - restore device contents from the backup archive

adb help - show this help message
adb version - show version num

scripting:
adb wait-for-device - block until device is online
adb start-server - ensure that there is a server running
adb kill-server - kill the server if it is running
adb get-state - prints: offline | bootloader | device
adb get-serialno - prints:
adb get-devpath - prints:
adb status-window - continuously print device status for a specified device
adb remount - remounts the /system partition on the device read-write
adb reboot [bootloader|recovery] - reboots the device, optionally into the bootloader or recovery program
adb reboot-bootloader - reboots the device into the bootloader
adb root - restarts the adbd daemon with root permissions
adb usb - restarts the adbd daemon listening on USB
adb tcpip - restarts the adbd daemon listening on TCP on the specified port
networking:
adb ppp [parameters] - Run PPP over USB.
Note: you should not automatically start a PPP connection.
refers to the tty for PPP stream. Eg. dev:/dev/omap_csmi_tty1
[parameters] - Eg. defaultroute debug dump local notty usepeerdns

adb sync notes: adb sync []
can be interpreted in several ways:

- If is not specified, both /system and /data partitions will be updated.

- If it is “system” or “data”, only the corresponding partition
is updated.

environmental variables:
ADB_TRACE - Print debug information. A comma separated list of the following values
1 or all, adb, sockets, packets, rwx, usb, sync, sysdeps, transport, jdwp
ANDROID_SERIAL - The serial number to connect to. -s takes priority over this if given.
ANDROID_LOG_TAGS - When used with the logcat option, only these debug tags are printed.
Bill-Westerfields-Mac-Pro:~ billwesterfield$
Nothing loads on to the tablet.

What did I miss?

thanks,
Bill

[import]uid: 97864 topic_id: 34133 reply_id: 334133[/import] </packages…></packages…>

What about adb install game.apk?

I always copy the apk to the same map as adb.

If your apk is not bigger then 25 Mb, you can always email it to yourself, and download and install it from your Kindle. Don’t forget to set ‘Allow Installation of Applications’ to On, in Settings -> Device.

Hope it helps.
[import]uid: 50459 topic_id: 34133 reply_id: 135771[/import]

I just drag and drop it onto my Kindle Fire, is that not possible on the KFHD?
Then I use ES File Explorer to locate the apk and install from there. [import]uid: 84115 topic_id: 34133 reply_id: 135886[/import]

Where do you drop that APK, just in the root folder?
[import]uid: 50459 topic_id: 34133 reply_id: 135910[/import]

I normally put it into the downloads folder - I definitely don’t put it into the root folder otherwise it could all get quite messy in there.

Not sure the location actually makes any difference, but the downloads folder works for me :slight_smile: [import]uid: 84115 topic_id: 34133 reply_id: 135913[/import]

Oh I just discovered the Download folder on the Kindle.

Computer\Kindle\Internal storage\Download

But if I copy an apk there I can’t find it on my Kindle Fire [import]uid: 50459 topic_id: 34133 reply_id: 135918[/import]

I’m afraid I can’t help any more then, as they’ve always shown up in ES File Explorer for me.

Unless…have you set “Allow Installation of Applications” to “On” yet? You can’t sideload apks without doing that first. [import]uid: 84115 topic_id: 34133 reply_id: 135920[/import]

I just downloaded ES File Explorer, now I can see it and it works.

Thanks for the info! [import]uid: 50459 topic_id: 34133 reply_id: 135921[/import]

No problem, glad I could help. [import]uid: 84115 topic_id: 34133 reply_id: 135922[/import]

thanks for the replies Rmbsoft & Alan
adding "game’.apk after ./adb install didn’t work.
And ‘Allow for installation of Applications’ was set to on.

I’m pretty green at this, so it’s frustrating, because it’s probably something I have/or haven’t done, but can’t be sure.

I will try the ES File Explorer you mention and let you know how it works out.

thanks,
Bill [import]uid: 97864 topic_id: 34133 reply_id: 135930[/import]

@billiamsw how experienced are you with the command line environment? The reason I ask, is I don’t see your your adb command is going to work.

When you put a ./ in front of a command like adb, that is explicitly telling the command shell to execute the program from the current directory. Since adb is running, that tells me you are in the folder/directory where the adb command lives.

Unix commands are typically in the format of:

/path/to/command options /path/to/file

Since ./ tells me your in the adb tools folder, is the apk you’re trying to install in the same folder? By not specifying a path to the file and just the file name, the assumption is the file is in the same folder as the command which is probably not the case and probably not a best practice either.

There are two solutions to this. First make sure your adb command is in a path the system can find it. You can do an “echo $PATH” command (without the quotes) and get a list of paths separated by the colon (:slight_smile: character. If the folder where the adb tools lives is listed there then you’re in great shape. If the adb tools folder is listed, then do a “cd” command to change directory to where your .apk file lives and enter the command as such:

adb install yourapp.apk

where yourapp is the name of your app. If it has spaces in the file name, put it in quotes like:

adb install “your app.apk”

If the adb command is not in the path you can do:

./adb install /path/to/yourapp.apk

and install it that way. You should get messages about a server starting up, a bit of a pause then it should come back and say success.

Now here is the really fun part. Lets say you make another build, this command will fail because ADB will not let you write over an existing app. You have to do a:

adb uninstall com.yourbiz.yourapp

where com.yourbiz.yourapp is the string you use to identify your app. Not the file name. Once it’s uninstalled, then you can run adb install to put the new version on.
[import]uid: 199310 topic_id: 34133 reply_id: 135996[/import]

Hey Rob,
Wow. Thanks for your input!
I am a newbie to this. I got this far jumping through blogs from Corona and Amazon Developer. Maybe because I am green, I find the Mac OS directions not specific to follow and more than a little confusing. Especially compared to building for iOS.

my path looked like this:
~ billwesterfield$ /Applications/adt-bundle-mac/sdk/platform-tools/./adb install/~ billwesterfield$ /Desktop/myapp.apk

Any resources you could recommend for a app developer newbie working on a Mac to guide?

I will check out your options when I get home to my work computer.

Thank you.
Bill [import]uid: 97864 topic_id: 34133 reply_id: 136000[/import]

Downloaded Easy Installer and when I fired it up my test app appeared in downloads folder (I had placed it there using the Android Utility Transfer).
Thanks everyone.

Will more than likely be back when I am ready to submit the final app.

Merry Christmas,
Bill
[import]uid: 97864 topic_id: 34133 reply_id: 136014[/import]

Just an addition to you apk instructions Rob, to overwrite an app you can use:

adb install -r yourapp.apk

Slightly quicker than uninstalling + reinstalling. Definitely works on Nook, not sure about other devices but I would assume they work too. [import]uid: 84115 topic_id: 34133 reply_id: 136015[/import]

What about adb install game.apk?

I always copy the apk to the same map as adb.

If your apk is not bigger then 25 Mb, you can always email it to yourself, and download and install it from your Kindle. Don’t forget to set ‘Allow Installation of Applications’ to On, in Settings -> Device.

Hope it helps.
[import]uid: 50459 topic_id: 34133 reply_id: 135771[/import]

I just drag and drop it onto my Kindle Fire, is that not possible on the KFHD?
Then I use ES File Explorer to locate the apk and install from there. [import]uid: 84115 topic_id: 34133 reply_id: 135886[/import]

Where do you drop that APK, just in the root folder?
[import]uid: 50459 topic_id: 34133 reply_id: 135910[/import]

I normally put it into the downloads folder - I definitely don’t put it into the root folder otherwise it could all get quite messy in there.

Not sure the location actually makes any difference, but the downloads folder works for me :slight_smile: [import]uid: 84115 topic_id: 34133 reply_id: 135913[/import]

Oh I just discovered the Download folder on the Kindle.

Computer\Kindle\Internal storage\Download

But if I copy an apk there I can’t find it on my Kindle Fire [import]uid: 50459 topic_id: 34133 reply_id: 135918[/import]

I’m afraid I can’t help any more then, as they’ve always shown up in ES File Explorer for me.

Unless…have you set “Allow Installation of Applications” to “On” yet? You can’t sideload apks without doing that first. [import]uid: 84115 topic_id: 34133 reply_id: 135920[/import]