Can't preview on Android with Geo APIkey on .20.2

Hi!

When trying to preview my application on android, it crashes with the error below.

Removing the Geo APIkey fixed this.

The problem can be reproduced by creating a new project and adding the Geo APIkey so the unoproj file looks like this:

{
  "RootNamespace":"",
  "Packages": [
      "Fuse",
      "FuseJS"
  ],
  "Includes": [
    "*"
  ],
  "Android": {
      "Geo": {
          "ApiKey": "my-key"
      }
  }
}

The error it produced:

C:\Users\joms9\Documents\butikkinfo-fuse>fuse preview -t android -v
Build started: FullCompile
Configuring
Project file: Butikkinfo.unoproj
Search paths: C:\Program Files (x86)\Fuse\Packages, C:\ProgramData\Uno\Packages
Packages:     UnoCore (0.29.20), Uno.Collections (0.29.0), Uno.Data.Xml (0.29.0), Uno.Geometry (0.29.0), Uno.Threading (0.29.20), Uno.Net.Http (0.29.20), ObjC (0.29.0), Experimental.iOS (0.29.0), Uno.Net.Sockets (0.29.0), Fuse.Designer (0.29.22), FuseCore (0.29.22), Fuse.Motion (0.29.22), Fuse.Animations (0.29.22), Fuse.Drawing (0.29.22), Fuse.Scripting (0.29.22), Fuse.Triggers (0.29.22), Fuse.Controls.Native (0.29.22), Fuse.Drawing.Batching (0.29.22), Fuse.Drawing.Meshes (0.29.22), Fuse.Drawing.Planar (0.29.22), Experimental.TextureLoader (0.29.0), Experimental.Http (0.29.22), Fuse.Elements (0.29.22), Fuse.Drawing.Primitives (0.29.22), Fuse.Drawing.Polygons (0.29.22), Fuse.Drawing.Paths (0.29.22), Fuse.Entities (0.29.22), Fuse.Gestures (0.29.22), Fuse.Navigation (0.29.22), Uno.Data.Json (0.29.0), Uno.Testing (0.29.20), Fuse.Scripting.Duktape (0.29.22), Fuse.Scripting.JavaScriptCore (0.29.22), Fuse.Scripting.Jurassic (0.29.22), Fuse.Scripting.V8 (0.29.22), Fuse.Reactive (0.29.22), Fuse.Shapes (0.29.22), Fuse.Controls (0.29.22), Fuse.Controls.Panels (0.29.22), Fuse.Controls.ScrollView (0.29.22), Fuse.Effects (0.29.22), Fuse.Controls.Primitives (0.29.22), Fuse.Android (0.29.22), Fuse.Controls.Navigation (0.29.22), Fuse.Controls.Video (0.29.22), Android (0.29.2), Fuse.iOS.Bindings (0.29.22), Fuse.iOS (0.29.22), Fuse.Controls.WebView (0.29.22), Fuse.Controls.MapView (0.29.22), Fuse.Desktop (0.29.22), Fuse.Storage (0.29.22), Fuse.UserEvents (0.29.22), Fuse (0.29.22), Polyfills.Window (0.29.22), FuseJS (0.29.22), Fuse.Physics (0.29.22), Fuse.BasicTheme (0.29.22), Fuse.GeoLocation (0.29.22), Outracks.Simulator.Protocol.Uno (0.0.0), Outracks.Simulator.Reflection.Uno (0.0.0), Outracks.Simulator.Client.Uno (0.1.0), Butikkinfo (0.0.0)
Output dir:   build\Android\Preview
(4,250.27 ms)

Compiling syntax tree (5,932.02 ms)
Generating code and data
* 297 namespaces stripped.
* 4713 types stripped.
* 46858 fields stripped.
* 98862 functions stripped.
* 857 classes sealed.
* 1623 functions sealed.
* 178 functions stripped from vtable.
(11,195.40 ms)

Building Android app
1/2: libButikkinfo.so


2/2: Butikkinfo.apk
Buildfile: C:\Users\joms9\Documents\butikkinfo-fuse\build\Android\Preview\Butikkinfo\app\src\main\build.xml

-set-mode-check:

-set-debug-files:

-check-env:
 [checkenv] Android SDK Tools Revision 24.0.2
 [checkenv] Installed at C:\ProgramData\Uno\SDKs\AndroidSDK

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

-set-debug-mode:

-debug-obfuscation-check:

-pre-build:

-build-setup:
[getbuildtools] Using latest Build Tools: 23.0.1
     [echo] Resolving Build Target for Butikkinfo...
[gettarget] Project Target:   Android 5.0.1
[gettarget] API level:        21
     [echo] ----------
     [echo] Creating output directories if needed...
    [mkdir] Created dir: C:\Users\joms9\Documents\butikkinfo-fuse\build\Android\Preview\Butikkinfo\app\src\main\bin\rsObj
    [mkdir] Created dir: C:\Users\joms9\Documents\butikkinfo-fuse\build\Android\Preview\Butikkinfo\app\src\main\bin\rsLibs
     [echo] ----------
     [echo] Resolving Dependencies for Butikkinfo...
[dependency] Library dependencies:
[dependency] No Libraries
[dependency]
[dependency] ------------------
     [echo] ----------
     [echo] Building Libraries with 'debug'...
   [subant] No sub-builds to iterate on

-code-gen:
[mergemanifest] Found Deleted Target File
[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...
     [aapt] C:\Users\joms9\Documents\butikkinfo-fuse\build\Android\Preview\Butikkinfo\app\src\main\bin\AndroidManifest.xml:55: error: Error: No resource found that matches the given name (at 'value' with value '@integer/google_play_services_version').
     [aapt]

BUILD FAILED
C:\ProgramData\Uno\SDKs\AndroidSDK\tools\ant\build.xml:653: The following error occurred while executing this line:
C:\ProgramData\Uno\SDKs\AndroidSDK\tools\ant\build.xml:698: null returned: 1

Total time: 0 seconds
(unknown): E0200: Android build failed
?: Error E0200: Android build failed
(1,450.50 ms)

Build completed in 22.84 seconds.
    0 Warning(s)
    1 Error(s)
Checking if C:\Program Files\Java\jdk1.8.0_40 exists.
C:\Program Files\Java\jdk1.8.0_40 was found.
Checking if JDK is corrupt
jdk was found.
Checking if C:\ProgramData\Uno\SDKs\AndroidSDK exists.
C:\ProgramData\Uno\SDKs\AndroidSDK was found.
Checking if C:\ProgramData\Uno\SDKs\AndroidSDK\tools exists.
C:\ProgramData\Uno\SDKs\AndroidSDK\tools was found.
Checking if Android SDK is corrupt.
androidsdk was found.
Checking if all required Android components are installed.
androidsdkpackages was found.
Checking if C:\ProgramData\Uno\SDKs\AndroidNDK\ndk-build exists.
C:\ProgramData\Uno\SDKs\AndroidNDK\ndk-build was found.
Checking if C:\ProgramData\Uno\SDKs\AndroidNDK\toolchains exists.
C:\ProgramData\Uno\SDKs\AndroidNDK\toolchains was found.
Checking if C:\ProgramData\Uno\SDKs\AndroidNDK\prebuilt exists.
C:\ProgramData\Uno\SDKs\AndroidNDK\prebuilt was found.
androidndk was found.
Checking if C:\ProgramData\Uno\SDKs\Ant exists.
C:\ProgramData\Uno\SDKs\Ant was found.
Checking if Ant is corrupt
ant was found.
Build ended
fuse: Failed to compile project

Sounds like a similar issue to what you ran into here. How does it behave if you add a reference to Fuse.Geolocation?

I’ve tested that now, and it still fails with the same error. My unoproj file now looks like this:

{
    "RootNamespace":"",
    "Packages": [
        "Fuse",
        "FuseJS",
        "Fuse.BasicTheme",
        "Fuse.GeoLocation"
    ],
    "Includes": [
        "*",
        "js/*.js"
    ],
    "Android": {
        "Geo": {
            "ApiKey": "super-secret-key"
        }
    }
}

Since you are using the Geo key, I assume you are using Fuse.Controls.Mapview somewhere. Then you also need a reference to Fuse.Maps.

I was not using a MapView, but adding the Fuse.Maps reference seemed to fix it.

So I added a MapView, and now the app fails when previewing on the phone.

No updates on this?

They already aware of this, update coming next patch.

Yeah we’re working on this, getting it fixed. Sorry for the silence on this one.

Alright, thanks for the update.

Any progress on this one?

Bump

Top men have been working on map fixes behind the scenes. The next release will contain several updates in this area and should hopefully fix your issue (or at least move it forwards).

We’ll let you know a download is available for testing.

Any estimate on the arrival of this update?

We have a big rewrite of JS engine in this release and we found some problems during testing, so we just need to get that fixed and we are ready. We decided to not make a patch release since this should™ be easy fixes and we can get the new stuff out quicker.