REPEAT: Fuse 1.9, Android 8 failure, cannot run app

No. I’m going to start building out a new environment tomorrow so if I come up against anything I’ll holler.

Many thanks for your time and effort on this.

ac

1 Like

Today I built a new environment on a new machine:

  • Installed Android Studio 3.2. Within AS, installed SDKs 16 through 28. The NDK version is 18.0.5002713

  • In AS, built a minimal app

  • Installed Fuse 1.9 (pre-packaged from https://github.com/fuse-open/fuse-studio/releases)

  • The app built OK with build tools 26.0.1, 27.0.1 and 28.0.3 - I did not try to run any of these versions today as the had previously failed.

  • Modified the environment following aeq’s instructions in the “How to update Uno installation” article

  • After these changes, I could not build the app with any NDK (tried 16b. 17c and 18). The error I get is:

“Configuring
(unknown): E3111: ‘Uno’ does not contain type or namespace ‘ValueType’. Could you be missing a package reference?
hotel-oxy.unoproj: E0000: Object reference not set to an instance of an object”

Any suggestions? I have de-installed and re-installed twice, followed the instructions very carefully but no luck.

Regards,
ac

Are you using the latest fuselibs? https://github.com/fuse-open/fuselibs

Yes. Downloaded that repo, built it and copied bin and lib over…

ac

Wait a moment… that link is different… I downloaded the repo listed in your “How to update Uno installation”…

OK. So I downloaded fuselibs from here: https://github.com/fuse-open/fuselibs, built it and added a .unoconfig file in the application project directory.

Build still fails with the same error. It is the Uno build that is fouling things up. If I restore Fuse.app/Contents/Uno to what it was before it still won’t build but it gets a lot further. The error that I’m getting now is related to goole maps.

I think I’ll start over and not do the Uno update, just the fuselibs update and see what I get

ac

The maps issue is probably this in MapView.uno: https://github.com/fuse-open/fuselibs/pull/1197/files#diff-859ea3aa203ac5be77d0f5038e89790c

Yeah, I’m not doing the latest Uno build for now as it forces android to be latest which breaks for “older android devices”, in terms of push notifications, we do gotta move to firebase soon as google is killing GCM notifications in April 2019.

Update on what I’m seeing…

I have been able to get a build to run on API 26 (by run, I mean that it did not crash on start up). The configuration for this is:

  • No Android Studio installed
  • Standard install of Fuse 1.9
  • fuse install android
  • Manual update of Android SDK using sdkmanager for tools: 26.1.1, build-tools: 26.0.3, 27.0.3, 28.0.3, platforms: 19, 20, 22, 24-28 (fuse only installed 21 and 23)
  • Downloaded NDK 16b and replaced ndk-bundle in the Android SDK directory
  • unoproj settings:
    “SDK”: {
    “BuildToolsVersion”: “28.0.3”,
    “CompileVersion”: 28,
    “MinVersion”: 19,
    “TargetVersion”: 26
    }

The above built OK and ran on an Xperia XZ1 Compact (API 26). The only difference between this and what I could not get to run previously is the build tools and compile levels which I bumped up to the latest.

Further info:
The latest fuselibs GitHub - fuse-open/fuselibs: Fuselibs is the Uno-libraries that provide the UI framework used in Fuse apps fail with the error:
> Could not resolve all dependencies for configuration ‘:app:_debugApkCopy’.

Could not find com.google.android.gms:play-services-maps:12.0.1.
Required by:
Release:app:unspecified

There is a possible fix here Update Fuse.PushNotifications module to work with Android 8 and keeping backward compatibility by mohammedmanssour · Pull Request #1197 · fuse-open/fuselibs · GitHub but this is several commits ahead of the latest fuselibs so it is not practical to use this to deploy into production. Because of this, although I can get the app running on 26, I do not believe that push notifications will work. I will test this more over the next few days but I think that I’m looking at API 25 functionality for API 26 (i.e. no red dot on the app icon, no notification channels)

A build of the latest Uno How to update Uno installation outright does not work. This crashes out early in the build process.

More later - most likely next week

AC

Here’s my fix to get the android push working beyond API 25 ~ https://github.com/fuse-open/fuselibs/pull/1220

We still need to move over to Firebase push though by April 2019 ~ https://developers.google.com/cloud-messaging/faq

Ah ha! That looks promising…

There are a bunch of changes sitting out there waiting to get merged… I’m going to have to wait until that is done before I can try it out

ac