Android with Juce - feedback!

Hi Jules,

Just tried using the latest Juce with Introjucer and Android, on my Mac.

  1. I had to remember that the project isn’t generated until you save the Introjucer project - it would be useful if you had a Save & Export button on the main UI to remove this “beginner confusion” issue

  2. It’d be useful if Android were a standard configuration - I needed to know to go in and create it; I remembered this from the last time I tried it :slight_smile:

  3. The NDK build folder etc. you supply are defaults which need changing - fair enough! - but I’d suggest you display values which correspond to paths that don’t exist in Red, to make it obvious what needs changing.

  4. You should create a “do_make.sh” shell script in the Android project folder, that the developer can use to build the project - otherwise, they need to figure-out the NDK magic to build

  5. When building the default project, there was a problem with spaces, i.e.:
    Android NDK: Your Android application project path contains spaces: '/Users/me/juce2/juce/extras projects/Builds’
    Android NDK: The Android NDK build cannot work here. Please move your project to a different location.
    /Users/pcole/android-ndk-r6/build/core/build-local.mk:92: *** Android NDK: Aborting. . Stop.
    … so you probably want to rename the “example projects” folder to “example_projects” or some such!

(I stopped trying at this point!)

  1. The Kindle Fire devices require support for all the following icons, or they don’t pass review … :slight_smile:
    res/drawable-hdpi/icon.png
    res/drawable-ldpi/icon.png
    res/drawable-mdpi/icon.png
    res/drawable-xhdpi/icon.png

  2. Kindle Fires require the app to allow space for the device-specific bar at the bottom of the screen… 20 pixels on my device.
    http://developer.coronalabs.com/forum/2012/09/06/kindle-fire-hd
    https://developer.amazon.com/sdk/fire/specifications.html

    I use code like this in my own native projects:

        if ( (android.os.Build.MANUFACTURER.equals("Amazon")) &&
             ( (android.os.Build.MODEL.equals("Kindle Fire")) || // Kindle Fire, 1st gen
               (android.os.Build.MODEL.equals("KFOT"))        || // Kindle Fire, 2nd gen
               (android.os.Build.MODEL.equals("KFTT"))        || // Kindle Fire, HD 7"
               (android.os.Build.MODEL.equals("WFJWI"))       || // Kindle Fire, HD 8.9" Wi-Fi
               (android.os.Build.MODEL.equals("WFJWA"))          // Kindle Fire, HD 8.9" WAN
             )
           )
        {
           // This is a Kindle Fire - allow space at the bottom for the device-specific menu bar!
        }

Best wishes,

Pete

1 Like

Hi Jules,

Looks like most of these issues still apply - are they things you’re going to be able to look at any time soon?

I ask as (for example) having to apply changes to the Java file, makes things tricky when I re-save the Introjucer project - as any such changes get overwritten :slight_smile: (see also http://www.rawmaterialsoftware.com/viewtopic.php?f=13&t=11713)

Best wishes,

Pete