Also when I brought back the APK that I got build from Mac to home and copied it via cable to phone, the way I described in my previous post, it won’t install either.
Dear Rob,
I tried the “java -version” command in Terminal and got this:
java version "1.7.0\_21" Java(TM) SE Runtime Environment (build 1.7.0\_21-b12) Java HotSpot(TM) 64-Bit Server VM (build 23.21-b01, mixed mode)
I’m gonna try the hello world sample and see how it turns out, as you asked.
I tried the sample Hello World and it got installed perfectly, I tried my app but won’t install.
If there is a problem with my game, so why it works if I build it under Windows?
Do I have to downgrade my JRE to 1.6 ?
Strange, apparently I have had two version of 1.6 and 1.7 because when I went to system library folder, there was a Java 1.6 folder there and I removed with with sudo rm rf but when I type java -version in terminal, it still replies JRE 1.7. I went to my user’s library and there was a Java 1.7 folder there!
I tried to run simulator but apparently it did not detect that 1.7 and wanted to download a JRE, and it’s still downloading, curious to see how it turns out.
Can it be that I have folders inside my project folder and I read assets from it? I’ve read somewhere on the site that it can be troublesome on Android but also read otherwise in some other place, maybe that’s why?
Folders themselves are not a problem. Folders with certain names are a problem, but I think it’s more of an iOS thing. What folder names are you using?
Are you by any chance building your apk to app folder? (If you are, dont…)
Do you have any files that have different filenames case sensitivity wise between the devices (like .png files that may have gotten renamed to .PNG) when you copied them over?
Thanks Rob for the reply,
Inside my project’s root folder are these:
docs
juice
sfx
and also “.svn” which is hidden.
Is path of the project directory has some restrictions like not having spaces in them or whatnot?
Sorry, I’m not aware of what “app folder” is.
Sorry I didn’t understand this part.
When you hit the build command in Corona, where does your .apk end up? Is it by any chance going into the same folder as your main.lua file?
The #1 reason why something works in the simulator but not on device is that devices are case-sensitive with regards to file names. The simulator (on Windows or on the Mac) are not. So if you do:
someImage = display.newImageRect(“myImage.png”, someWidth, someHeight)
It will load the file if it’s name is: MyImage.png, myimage.png, myImage.PNG, MyImAgE.PnG in the simulator, but on devices, it has to be an exact match: only myImage.png.
I am getting pretty much the same error messages from adb and identical problems building for android from a mac:
W/PackageParser( 339): Exception reading /data/app/vmdl-1517856330.tmp
W/PackageParser( 339): java.io.IOException: Entry is not named
W/PackageParser( 339): at java.util.jar.InitManifest.initEntries(InitManifest.java:60)
W/PackageParser( 339): at java.util.jar.Manifest.read(Manifest.java:221)
W/PackageParser( 339): at java.util.jar.Manifest.<init>(Manifest.java:120)
W/PackageParser( 339): at java.util.jar.JarFile.getManifest(JarFile.java:296)
W/PackageParser( 339): at android.content.pm.PackageParser.collectCertificates(PackageParser.java:565)
W/PackageParser( 339): at com.android.server.pm.PackageManagerService.installPackageLI(PackageManagerService.java:7751)
W/PackageParser( 339): at com.android.server.pm.PackageManagerService.access$1500(PackageManagerService.java:175)
W/PackageParser( 339): at com.android.server.pm.PackageManagerService$6.run(PackageManagerService.java:6275)
W/PackageParser( 339): at android.os.Handler.handleCallback(Handler.java:605)
W/PackageParser( 339): at android.os.Handler.dispatchMessage(Handler.java:92)
W/PackageParser( 339): at android.os.Looper.loop(Looper.java:137)
W/PackageParser( 339): at android.os.HandlerThread.run(HandlerThread.java:60)
D/PowerManagerService( 339): releaseDVFSLockLocked : all DVFS_MIN_LIMIT are released
W/ActivityManager( 339): mDVFSLock.release()
D/memalloc( 150): ion: Freeing buffer base:0x42cec000 size:3932160 fd:38
D/memalloc( 150): ion: Unmapping buffer base:0x42cec000 size:3932160
D/InstallAppProgress( 2976): Installation error code: -105
Same project builds perfectly from PC. The device was a galaxy 7 inch
Version 2013.1143 (2013.6.18)
java version “1.6.0_45”
Java™ SE Runtime Environment (build 1.6.0_45-b06-451-11M4406
Dear Rob,
No,
No, all my file names are lower case but they have underscore in them.
Just to make sure, you have enough room on the device’s internal memory to install the app? (not SD memory)
I have around 200 MiB on my internal memory.
*bump*
If you can install and run Hello World with no problems, then that proves that the build process, including your keys are correct. Googling your error only brings up a bunch of stuff related to zip. Are you using any plugins? Can you free up some space and try it?
I was fine for a few days but I’m getting the same error again.
Wish there was some kind of hash test that we could do or it would be performed automatically to make sure the file is downloaded correctly from the servers.
No I’m not using any plugins.
If my zip files are corrupted, why when I rename APK to ZIP, I can uncompress them without problems?
What is this error -105 and “Entry is not named” error related to my problem, my google searches are not futile.
1- Since my game crashes on installation, does it can still be related to file names casing and other things we suspected before?
2- If my Internet connection is bad, why iOS builds, almost, always work without problem?
3- Why simulator only uploads a few kilobytes rather than my whole project which is around 15MiB to build server? Would it be related to the problem?
I’m downloading adt for Mac, it will take about a day to download so that might help but let me know if you want me to do any check from Windows with ADT.
BTW, do you know how I can run the adb logcat in OS X? I’m new to OS X and have no idea how to pass parameter adb.
adb needs to be in system path. Google how to do this if you wish. Then you open the Terminal and just type the adb + parameter commands there.
The simulator only uploads the lua butecode from the app, not all of the assets etc.