Jump to Navigation

Me on Twitter

  • RT @codinghorror: Don't forget to have an extra special scary programmer halloween.. by doing the SCARIEST THING IMAGINABLE... looking at y… 6 years 11 weeks ago
  • @instapaper @Pocket @wallabagapp I'm now using a personal instance of #wallabag and it really does the job ! 6 years 11 weeks ago
  • @instapaper @Pocket @wallabagapp I'm now using a personal instance of #wallabag and it really does the job ! 6 years 11 weeks ago
  • RT @gavinsblog: Spot the robot dog dancing to UpTown Funk is simultaneously both terrifying and hilarious. https://t.co/UNPsXZrXvh 6 years 12 weeks ago
  • Almost full screen cookie warning... On the cookie policy page ! The Internet is going crazy... #GDPR https://t.co/n3RtuNYJC8 6 years 12 weeks ago
  • @TwidereProject I hope not. Twidere is the best Twitter client around. I've tried many before, including Twitter's… https://t.co/XZWJNwqk1U 6 years 12 weeks ago
  • Not being aware of an exploit doesn't mean there wasn't... New Bluetooth Hack Affects Millions of Devices from Maj… https://t.co/Prjj3VMCnV 6 years 13 weeks ago
  • @_FranceConnect_ A est-il prévu pour fournir l'équivalent d'un justificatif de domicile à toute société le demandant ? 6 years 16 weeks ago
  • @GroupeLaPoste Bravo pour https://t.co/cBOQQDdlVq Le facteur est venu vérifier mon identité en 24h et mon identité… https://t.co/xixwTwxsCF 6 years 16 weeks ago
  • Soooo true.... https://t.co/vhEsNGV0uQ 6 years 17 weeks ago

Reply to comment

android Where Android Market stores the downloaded .apk

Today I ran into a small problem that might happen sometimes : trying to benefit from a 2 day-only offer to download for free Duke Nukem 3d (just for fun, I don't think it's going to be the killer app this year), I found out that my phone had not enough free memory to install it (Market told me : 56MB required).

After having removed several apps from the memory to free enough space to install the game - and after a first failed attempt to download the 28MB archive - I was able to download the .apk from the Market (that was "phase 1 : download").

Immediately after the file was downloaded, I started up my Open Advanced Task Killer to free more memory for the installation process.

Unfortunately I got the very bad idea to kill the Android Market process, while it was already installing the app ("phase 2 : installation").

From there, even though Duke Nukem 3d was listed in my installed apps, I only had the option to install it, not to launch nor uninstall it. Even launching the Market again was not triggering the installation anymore.

S**t happens.

 

Luckily, after a short introspection into the SD card and device filesystem, I was able to get the downloaded .apk file and start the app without using more (of my limited) bandwith.

Here is what I could observe :

  • the original downloaded .apk was stored as /cache/downloadfile-2.apk, and fully functional
  • there was /data/app/com.machineworksnorthwest.duke3d.zip, probably interrupted reconstruction or copy of the apk into its final destination

And the procedure I used to get it working (type the given commands) :

  • adb shell (adb is a command from the Android sdk, which is therefore required)
  • su (root access is required, look for it on xda forums)
  • cat /cache/downloadfile-2.apk > /sdcard/com.machineworksnorthwest.duke3d.apk (this simply copies from cache to SD card)
  • Finally, use any file browser like Astro to go to the root of the SD card and click on the .apk to uninstall/install/start it

 

I didn't look for more details, as I already got what I wanted, but this event made me curious about the internals of the Android Market app, and I might come back later to add more to this article...

 

Duke Nukem 3d app icon

Reply

The content of this field is kept private and will not be shown publicly.
  • Web page addresses and e-mail addresses turn into links automatically.
  • E-Mail addresses are hidden with reCAPTCHA Mailhide.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Vous pouvez activer la coloration syntaxique du code source à l'aide des balises suivantes: <code>, <blockcode>, <drupal5>, <drupal6>, <java>, <javascript>, <php>, <python>. The supported tag styles are: <foo>, [foo].
  • Twitter-style #hashtags are linked to search.twitter.com.

More information about formatting options

By submitting this form, you accept the Mollom privacy policy.