I'm having troubles with APK expansion management in a Phonegap application on Android platform.
I installed the com.flyingsoftgames.xapkreader phonegap plugin and following all the instructions I managed to upload the first APK along with its expansion .obb file.
The first download from the Play Store worked just fine: the app and its extras were successfully downloaded to the device with a single operation.
After publishing an update of the APK and downloading it to the device, the following happened:
I launched the updated application;
The downloader activity of the com.flyingsoftgames.xapkreader started, showing the download dialog;
Since the .obb file didn't change and a copy of it was already present in the local folder, the downloader activity read "Download completed.";
Finally the problem is that the dialog was not dismissed, nor it presents any way to dismiss it manually, so the application doesn't proceed with its launching.
The only way to launch it, is to kill it (in order to stop the "stuck" download activity) and opening it again.
Should I provide a different .obb for each updated version? I don't think so, since this would invalidate the APK+OBB mechanism, conceived to allow for smaller sized updates, as far as I have understood.
Thank you in advance for any advice.
Actually it seemed like a bad installation of the plugin.
I resolved by removing all plugins, rebulding the application for the desired platform from scratch (e.g. phonegap build android) and by re-installing all the plugins.
I noticed something strange though: the installation of the plugin via phonegap plugin installer (with command phonegap plugins add com.flyingsoftgames.xapkreader) installs a different version than the one from the github repository (with the command phonegap plugin add https://github.com/agamemnus/cordova-plugin-xapkreader.git).
So pay attention in case you find different instructions in tutorials and forums.
The version that worked for me was the one from the github repository.
Related
recently I created a flutter application and tried to publish it, I got 4 files from flutter build apk --split-per-abi and tried all of them, but none of them was installable after downloading from a host, I want to put the apk files on the server to people download and install it, but when I download this with chrome it says:
can't open file
but when I share that downloaded file with telegram and try to install that shared file, there is no problem with it.
what should I do?
notice: while installing I get some security warnings like blocking from play protect
edit: I tried to do that with firefox and that works, it seems the problem is just with chrome
I have a app in 'Google play store'. I want to upload a new update to my app .
When I finished the new version of the application, I tried to install it on the phone over the old version but I get the error message application not installed.
I used the same package name and same keystore
Sometimes it happens because of the build is not packaged properly. It happened with me when i was using JNI. If Clean, invalidate cache and rebuild is not working then please share more details about the app which libraries and features you are using like progurd, jni or something else.
I am using TestFairy for uploading .apk file for testing. Problem is I am unable to download previously uploaded .apk files from older links infact from older links only latest .apk version file is getting downloaded. And version number is showing same for all the .apk file which ever I have uploaded till now. And while uploading .apk file through Testfairy, it says
"TestFairy SDK not integrated in build, no recordings will be performed."
How are you downloading this APK?
If you are using email invites, then the link should work fine with no problems.
If you are using the download page, it might be that you have your download page set to download the auto-update build. Please go to the latest version, and in Build Settings, check the "Upgrade to this build" checkbox.
Webhooks, Testers App for Android and push notifications, you get invited to a specific version, so I don't believe this is the case.
About missing SDK
TestFairy also has an Insights SDK, this SDK will record videos when users are running your app on their devices. It will also handle crashes and it's very recommended you try the SDK to see its benefits. You can install the SDK by simply adding a couple of lines to your Android Gradle and a single line of code. Here is the documentation: https://docs.testfairy.com/Android/Integrating_Android_SDK.html
I have got the solution for the problem from TestFairy team. By changing the versionName every time in 'build.gradle'-->'defaultConfig' solved my problem.
I need help in upgrading apk file. I have apk file developed for android 2.2 and I donot wish to publish my apk on android market. I published apk in our own webserver. And i could download it to my android mobile. Now the issue is that how can i upgrade apk file by publishing in our webserver.
My questions are:
How android market does apk upgrading?
How to upgrade a binary in android mobile with new version of which old version is already installed?
I used android built in view using intent which actually Re-installs apk not upgrading.But i don't want prompts asking "Do u want to install application?".
I want the apk to be upgraded once user click upgrade button without showing prompt to user, like doing in android market.
Is there any method to upgrade apk in android?
Are there any restrictions doing that?
Are there any specific permissions i need or i need to set in manifest file.
Once you've downloaded the APK, Android itself decides if the program is installed and needs to be upgraded, or if it is a new installation. Users can decide for themselves whether to upgrade or not.
Besides how to find out when there is an update available, it's not possible to upgrade it without prompting the user with the "Do you want to install". Android doesn't allow third apps to install apps unless the phone is rooted and your app has root access, but I think that this isn't your target group.
I have no experience with that but what you could try is loading classes manually from your server and then store it in the assets folder.
http://android-developers.blogspot.com/2011/07/custom-class-loading-in-dalvik.html
This is one approach, I don't think that it's very handy and easy but it would work.
Hope it helps!
PS:
And just because I'm wondering, is there a reason why don't you wanna publish it on the Android Market?
When you are publishing an App on your private web server, you need to create a process through which you can check for new version .There is No in built method for doing this .
I have created one as well.
I am starting to explore the game development using unity 3d for android. I have downloaded the trial version of unity 3.3. I went through few tutorials.
I have one question that is not answered. In the normal apps which we develop using eclipse, we can deploy onto mobile by copying the apk file. What about unity 3d? How do I get the game onto my phone. I don't want to publish on market.
It is possible to transfer your assets to Eclipse. When it's integrated you can debug via your android phone. Be sure to read the tutorial on Unity's homepage. There is a step by step start-up guide and some more. Following links are worth looking at:
Getting started with Unity and Android
Official - Integrating Unity with Eclipse
Alternative link - Integrating Unity with Eclipse
It would seem that the official "integration" link is broken so I updated with a forum post that covers the same topic. However I recommend to try with the official link first.
Yes, you can simply copy the apk to your device and install it. Unity builds an apk file (and will optionally sign it using a keystore that you provide or let it generate for you). Once it has built that apk you can deploy it normally. You can even have it include a customized manifest in the apk that it builds if you want to (but it generates a nice one from your settings in the unity project by default).
There are two methods for this, as far i understand,
Using Build Settings--> Build, It builds the apk file that can be installed on your device using adb install <apk file path and name>
Using Build Settigs--> Build and Run. Which automatically installs the apk built apk file on your device if connected
go to file
-build
-select android platform(your pc has to have android development kit)
-save your apk
As it is still unanswered I try to close this question
First of all, current version of Unity 5.2 is much more powerfull than version 3.3. mentioned in original question.
What about unity 3d? How do I get the game onto my phone. I don't want to publish on market.
The same way. Unity allows you to publish build as *.apk on ocal machine and then you can just copy it to your phone and install it.
What is more cool, now you can debug your application running on phone. You have to install Unity Remote to the phone and run. Now you can set breakpoints and debug as normally.
If you change your mind and go to publish on Market - Unity will sign your *.apk
Hope this helps someone, good luck!
The Same way you generate the apk through Eclipse like that in unity you need to build the project. For that android sdk and jdk should be installed in your system and u need to show those path in the unity Preferences then u need a google keystore and need to sign in with that key store in the Publisher settings and then u are able to build the apk which will be store in your local system and you can copy that to your mobile and install the apk file.