android compile errors, where to start?

Previous topic - Next topic

nabz32

hmm are there some problems with .bmp files?
Because a .png fnt base texture used in my vector print loaded correctly.
I completly deleted every setcurrentdir() and replaced it with absolute paths for loadsprite, loadobj etc.


The AndroTest.apk ran fine.

erico

#16
If that apk ran fine, then your problems are the paths.

I´m currently only loading BMP888 as it takes easy on the performance but I was using PNG 32bits (with alpha) before and it worked fine, it is just that having many going around was actually hogging it on the Caanoo. Android should have no problems.

I´m glad things are working now for you. :good:

edit: re-read your post...no, never had any problems with BMP on android. Check when you generate the file what kind of settings you are using.
edit2: non standard bmps may not load, color spaces that are not RGB neither. If such is not working, post the bmp file and I will check it out myself.

Ian Price

Quotehmm are there some problems with .bmp files?
No, there aren't problems with .BMP files par se - just ensure that the case matches the code.

EG
Code (glbasic) Select

LOADSPRITE "FRED.BMP" // NOTICE ALL CAPITAL LETTERS


If you BMP file is called "fred.BMP" or "fred. bmp" or even "FRED.bmp" it won't be found on Android as the name and format don't match what was in your code. Check that every single piece of media is case-correct.
I came. I saw. I played.

nabz32

thx for helping me on this erico and Ian,

I attached a .bmp that wont load on android,
Here is the code I used to load it ( works under win32 )
Code (glbasic) Select
IF DOESFILEEXIST( Media$ + "intro" + "/presents.bmp" ) THEN LOADSPRITE Media$ + "intro" + "/presents.bmp", 1

I checked the character cases for all filenames again and there is no mismatch, i strictly keep to camel writing style for file names with file endings which are all small letters.


erico

The only thing I see in your bmp is that it is an indexed one instead of RBG.
I thought those would load ok, I will have to test it out.

I´m sure RGB works fine but will increase your media size 3x.
This one should work. But I will check the indexed anyways.

erico

It must be the indexed thing...I tried a quick example on compiling to PC and it doesn´t load it, let alone android.
I´m running GLB 14 latest by the way.

You said it works fine for you on pc...which GLB version are you running?

nabz32

I used v14.006,

Your version of the .bmp also won´t load for me on android, but on Win32 it works.

Seems to be something else going on.

By the way, how can the package name be changed, or the android manifest.xml,
everytime it names the package "com.company.title".

spacefractal

Don't change the manifest in the bin folder (it's automatically created by compiler), only in the main one.

I'm checking out tomorrow what happens.

Also make sure spelling is correct. It's letters is 100% correct as Ian said. It's often that problem. BMP is not the same as bmp. Typical issues when some fishing.

Also which device is it?
Genius.Greedy Mouse - Karma Miwa - Spot Race - CatchOut - PowerUp Elevation - The beagle Jam - Cave Heroes 2023 - https://spacefractal.itch.io/

erico

Quote from: nabz32 on 2016-May-13
I used v14.006,
Your version of the .bmp also won´t load for me on android, but on Win32 it works.
Seems to be something else going on.
...

I doubt...are you sure you are not trying to display a black letter over a black background?
All my games and tests on android are using BMP as I sent you, it all works on the latest GLB (v14.106)

I tried my BMP on pc and it worked fine, will compile Space Fractal´s android scale routine now just to prove....hang on, we will find out.

erico

#24
It works fine on android here.
I painted the letters white so it shows over a black background.
Here a picture and the APK so you can check it out.

edit: changed the picture...no need to waste MBs on the server when 60KB may do. ::)

nabz32

I See the polyvector which should use this Texture over
The White background without its Texture of course.
I tried this on My galaxy s5 neo.

Also how did you get v14.106, was there another update?

Ian Price

V14.106 is the current version. Do an internet update if you are using V14.xx and behind.
I came. I saw. I played.

nabz32

#27
I tried the update, but now it says it cant find the JDK in the folder I installed it and set the environment variable JAVA_HOME to.
Why did it work with 14.006 and with 14.106 there are troubles, have I used a wrong JDK again?

Edit:
Seems like swt.jar and tools.jar could not be found

Edit: Reinstalled the jdk and it compiles again, however the issues mentioned still remain.
The app can also not load any of my custom data files.

Here is the compiler output for my latest try:
Code (glbasic) Select

_______________________________________
*** Configuration: ANDROID ***
precompiling:
GPC - GLBasic Precompiler V.10.037 SN:ea2d5b8f - 3D, NET
Wordcount:21778 commands
compile+link:

running glb_build.bat
Using ANDROID_TARGET="android-22"
You can use "C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\glb_android_build.bat" to change the API level and SDK path.
%ANDROIDSDK% not set. Using GLBasic's default target-22, Android 5.1 (Lollipop
ECHO ist ausgeschaltet (OFF).
androidmanifest.xml:
Make sure to check do a manual check for those.
android:minSdkVersion="10" android:targetSdkVersion="22"
ECHO ist ausgeschaltet (OFF).

AndroidIcons.exe [v21-3-2015] running...
copy C:/Users/Nabz/Desktop/GLBasicProjects/GLBasic/reggieWorldMRewrite/icon_36_AndroidExtras.png to C:/Users/Nabz/Desktop/GLBasicProjects/GLBasic/reggieWorldMRewrite/distribute/Android/res/drawable-ldpi/icon.png
copy C:/Users/Nabz/Desktop/GLBasicProjects/GLBasic/reggieWorldMRewrite/icon_48_AndroidExtras.png to C:/Users/Nabz/Desktop/GLBasicProjects/GLBasic/reggieWorldMRewrite/distribute/Android/res/drawable-mdpi/icon.png
copy C:/Users/Nabz/Desktop/GLBasicProjects/GLBasic/reggieWorldMRewrite/icon_72_AndroidExtras.png to C:/Users/Nabz/Desktop/GLBasicProjects/GLBasic/reggieWorldMRewrite/distribute/Android/res/drawable/icon.png
copy C:/Users/Nabz/Desktop/GLBasicProjects/GLBasic/reggieWorldMRewrite/icon_72_AndroidExtras.png to C:/Users/Nabz/Desktop/GLBasicProjects/GLBasic/reggieWorldMRewrite/distribute/Android/res/drawable-hdpi/icon.png
copy C:/Users/Nabz/Desktop/GLBasicProjects/GLBasic/reggieWorldMRewrite/icon_96_AndroidExtras.png to C:/Users/Nabz/Desktop/GLBasicProjects/GLBasic/reggieWorldMRewrite/distribute/Android/res/drawable-xhdpi/icon.png
copy C:/Users/Nabz/Desktop/GLBasicProjects/GLBasic/reggieWorldMRewrite/icon_180_AndroidExtras.png to C:/Users/Nabz/Desktop/GLBasicProjects/GLBasic/reggieWorldMRewrite/distribute/Android/res/drawable-xxhdpi/icon.png
copy C:/Users/Nabz/Desktop/GLBasicProjects/GLBasic/reggieWorldMRewrite/icon_192_AndroidExtras.png to C:/Users/Nabz/Desktop/GLBasicProjects/GLBasic/reggieWorldMRewrite/distribute/Android/res/drawable-xxxhdpi/icon.png
C:/Users/Nabz/Desktop/GLBasicProjects/GLBasic/reggieWorldMRewrite/icon_ouya_AndroidExtras.png is missing (732x412 size)
the Ouya icon is not important, if you dont want to support the console
copy C:/Users/Nabz/Desktop/GLBasicProjects/GLBasic/reggieWorldMRewrite/icon_ouya_AndroidExtras.png to C:/Users/Nabz/Desktop/GLBasicProjects/GLBasic/reggieWorldMRewrite/distribute/Android/res/drawable-xhdpi/ouya_icon.png

Checked AdActivity (intersititals):
Does not uses a AdActivity

Android Extras version (SDLActivity.java):
* 2.11.2

Checking Icons Finished...

BUILD STAGE 2: Start compiler (android.bat)
SDK=Q:\Compiler\platform\android\bin\..\android-sdk-windows
Updated and renamed default.properties to project.properties
Updated local.properties
Added file C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\build.xml
Added file C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\proguard-project.txt
.
BUILD STAGE 3: Build a debug build
Buildfile: C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\build.xml

-set-mode-check:

-set-debug-files:

-check-env:
[checkenv] Android SDK Tools Revision 24.2.0
[checkenv] Installed at Q:\Compiler\platform\android\android-sdk-windows

-setup:
     [echo] Project Name: glbasic
  [gettype] Project Type: Application

-set-debug-mode:

-debug-obfuscation-check:

-pre-build:

-build-setup:
[getbuildtools] Using latest Build Tools: 21.1.2
     [echo] Resolving Build Target for glbasic...
[gettarget] Project Target:   Android 5.1.1
[gettarget] API level:        22
     [echo] ----------
     [echo] Creating output directories if needed...
    [mkdir] Created dir: C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\bin
    [mkdir] Created dir: C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\bin\res
    [mkdir] Created dir: C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\bin\rsObj
    [mkdir] Created dir: C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\bin\rsLibs
    [mkdir] Created dir: C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\gen
    [mkdir] Created dir: C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\bin\classes
    [mkdir] Created dir: C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\bin\dexedLibs
     [echo] ----------
     [echo] Resolving Dependencies for glbasic...
[dependency] Library dependencies:
[dependency] No Libraries
[dependency]
[dependency] ------------------
     [echo] ----------
     [echo] Building Libraries with 'debug'...
   [subant] No sub-builds to iterate on

-code-gen:
[mergemanifest] Merging AndroidManifest files into one.
[mergemanifest] Manifest merger disabled. Using project manifest only.
     [echo] Handling aidl files...
     [aidl] No AIDL files to compile.
     [echo] ----------
     [echo] Handling RenderScript files...
     [echo] ----------
     [echo] Handling Resources...
     [aapt] Generating resource IDs...
     [echo] ----------
     [echo] Handling BuildConfig class...
[buildconfig] Generating BuildConfig class.

-pre-compile:

-compile:
    [javac] Compiling 30 source files to C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\bin\classes
    [javac] warning: [options] source value 1.5 is obsolete and will be removed in a future release
    [javac] warning: [options] target value 1.5 is obsolete and will be removed in a future release
    [javac] warning: [options] To suppress warnings about obsolete options, use -Xlint:-options.
    [javac] Note: Some input files use or override a deprecated API.
    [javac] Note: Recompile with -Xlint:deprecation for details.
    [javac] 3 warnings

-post-compile:

-obfuscate:

-dex:
      [dex] input: C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\bin\classes
      [dex] input: C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\libs\android-support-v4.jar
      [dex] input: C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\libs\gson-2.2.2.jar
      [dex] input: C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\libs\ouya-sdk.jar
      [dex] input: C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\libs\openiab-0.9.7.2.jar
      [dex] Pre-Dexing C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\libs\android-support-v4.jar -> android-support-v4-e0fd37f16ff9693cd3896275a69c037e.jar
      [dex] Pre-Dexing C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\libs\gson-2.2.2.jar -> gson-2.2.2-680b0097dfd29297c69eca6a74c10765.jar
      [dex] Pre-Dexing C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\libs\ouya-sdk.jar -> ouya-sdk-2c0ebe48beee0587e938368821ac53db.jar
      [dex] Pre-Dexing C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\libs\openiab-0.9.7.2.jar -> openiab-0.9.7.2-3ec96a24e5e1aa37ead58fedfa2bc827.jar
      [dex] Converting compiled files and external libraries into C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\bin\classes.dex...
       [dx] Merged dex A (67 defs/114.1KiB) with dex B (371 defs/436.8KiB). Result is 438 defs/673.3KiB. Took 0.2s
       [dx] Merged dex A (438 defs/673.3KiB) with dex B (155 defs/153.0KiB). Result is 593 defs/1060.0KiB. Took 0.2s
       [dx] Merged dex A (593 defs/1060.0KiB) with dex B (204 defs/181.7KiB). Result is 797 defs/1684.0KiB. Took 0.1s
       [dx] Result compacted from 2685.8KiB to 1022.1KiB to save 1663.6KiB
       [dx] Merged dex A (797 defs/1684.0KiB) with dex B (169 defs/183.0KiB). Result is 966 defs/1022.1KiB. Took 0.2s

-crunch:
   [crunch] Crunching PNG Files in source dir: C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\res
   [crunch] To destination dir: C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\bin\res
   [crunch] Processing image to cache: C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\res\drawable-hdpi\icon.png => C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\bin\res\drawable-hdpi\icon.png
   [crunch]   (processed image to cache entry C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\bin\res\drawable-hdpi\icon.png: 0% size of source)
   [crunch] Processing image to cache: C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\res\drawable-ldpi\icon.png => C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\bin\res\drawable-ldpi\icon.png
   [crunch]   (processed image to cache entry C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\bin\res\drawable-ldpi\icon.png: 0% size of source)
   [crunch] Processing image to cache: C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\res\drawable-mdpi\icon.png => C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\bin\res\drawable-mdpi\icon.png
   [crunch]   (processed image to cache entry C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\bin\res\drawable-mdpi\icon.png: 0% size of source)
   [crunch] Processing image to cache: C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\res\drawable-xhdpi\icon.png => C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\bin\res\drawable-xhdpi\icon.png
   [crunch]   (processed image to cache entry C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\bin\res\drawable-xhdpi\icon.png: 68% size of source)
   [crunch] Processing image to cache: C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\res\drawable-xhdpi\ouya_icon.png => C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\bin\res\drawable-xhdpi\ouya_icon.png
   [crunch]   (processed image to cache entry C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\bin\res\drawable-xhdpi\ouya_icon.png: 73% size of source)
   [crunch] Processing image to cache: C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\res\drawable-xxhdpi\icon.png => C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\bin\res\drawable-xxhdpi\icon.png
   [crunch]   (processed image to cache entry C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\bin\res\drawable-xxhdpi\icon.png: 78% size of source)
   [crunch] Processing image to cache: C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\res\drawable-xxxhdpi\icon.png => C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\bin\res\drawable-xxxhdpi\icon.png
   [crunch]   (processed image to cache entry C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\bin\res\drawable-xxxhdpi\icon.png: 94% size of source)
   [crunch] Processing image to cache: C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\res\drawable\icon.png => C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\bin\res\drawable\icon.png
   [crunch]   (processed image to cache entry C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\bin\res\drawable\icon.png: 0% size of source)
   [crunch] Crunched 8 PNG files to update cache

-package-resources:
     [aapt] Creating full resource package...
     [aapt] Warning: AndroidManifest.xml already defines debuggable (in http://schemas.android.com/apk/res/android); using existing value in manifest.

-package:
[apkbuilder] Current build type is different than previous build: forced apkbuilder run.
[apkbuilder] Creating glbasic-debug-unaligned.apk and signing it with a debug key...

-post-package:

-do-debug:
[zipalign] Running zip align on final apk...
     [echo] Debug Package: C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\bin\glbasic-debug.apk
[propertyfile] Creating new property file: C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\bin\build.prop
[propertyfile] Updating property file: C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\bin\build.prop
[propertyfile] Updating property file: C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\bin\build.prop
[propertyfile] Updating property file: C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android\bin\build.prop

-post-build:

debug:

BUILD SUCCESSFUL
Total time: 27 seconds
.
BUILD STAGE 4: Build a release build
   [subant] No sub-builds to iterate on
    [javac] warning: [options] source value 1.5 is obsolete and will be removed in a future release
    [javac] warning: [options] target value 1.5 is obsolete and will be removed in a future release
    [javac] warning: [options] To suppress warnings about obsolete options, use -Xlint:-options.
    [javac] Note: Some input files use or override a deprecated API.
    [javac] Note: Recompile with -Xlint:deprecation for details.
    [javac] 3 warnings

BUILD SUCCESSFUL
Total time: 14 seconds
Picked up _JAVA_OPTIONS: -Xms256m -Xmx512m
.
HOW TO INSTALL? Install by invoke this command:
"Q:\Compiler\platform\android\bin\..\android-sdk-windows\platform-tools\adb.exe" install -r "C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android/bin/glbasic-debug.apk"
.
HOW TO SIGN? Sign it by invoke this command:
"Q:\Compiler\platform\android\bin\glb_code_sign.bat" "C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android"
.
Android=C:\Users\Nabz\Desktop\GLBasicProjects\GLBasic\reggieWorldMRewrite\distribute\Android
erfolgreich
_______________________________________
*** Fertig ***
Dauer: 91.5 sek. Zeit: 10:16
Erstellen: 1 erfolgreich.

spacefractal

Which kind of data? If you scan a dir, a DOESDIREXISTS is required before doing that.

If it's still fails, create that dir (CREATEDIR) first in the startup or your code to make sure they do exists.

Glbasic can not seen files in Apk and require copy to the Internenal memory first. This might fail with costume none graphics files. Here make sure the directory exists by creating them.

Genius.Greedy Mouse - Karma Miwa - Spot Race - CatchOut - PowerUp Elevation - The beagle Jam - Cave Heroes 2023 - https://spacefractal.itch.io/

nabz32

#29
For testing purposes I copied all my media to the android documents folder
and made the game use the writable folder for everything.

Now all assets are loaded, however the z-Buffer seems to be broken somehow.
Also it tends to run slower than on the Pandora.
Edit: The slowness resulted due to me accidentally setting the texture quality to high instead of low.