We are having difficulty with a client's app. The app crashes on launch stating the following error in logcat: Android support-v4 is in the plugins directory, as well as support annotations and support core utils. Though, I'm not sure of the correct version that should work with your Unity plugin and the versions we have apparently don't (or Android removed ArrayMap from support-v4...). I'm attaching the full logcat error as well as the file list for the plugin directory for the project in hopes that you can tell us what is going wrong. List of files in plugins folder: http://pastebin.com/4Hbeh2AR Logcat: http://pastebin.com/TNkgdfHE
|
Didn't find what you were looking for?
New post-
Unity version 5.3.4p5
JDK jdk1.8.0_111
Android Support Repository 39
Google Play Services 37
Google Repository 38
Comment actions -
Michael Halka
Hi Sean,
Can you confirm that, using the Android SDK manager, that the latest Android Support library has downloaded and installed into your Android SDK location?
Note, that this should be linked to your Android SDK location, not the Plugins folder.
Comment actions -
Hi Michael,
All appears to check out. I've got v4, v7, v13, v14, and v17 in C:\@Deployment\android\android-sdk\extras\android\support\
The android-support-v4.jar is there.
If I extract the "support-v4-24.2.0.aar" that Google Play services resolver copies (or generates) into the Unity project it is suspiciously small. The classes.jar inside the aar is only 563 bytes. How is it generating that file OR where is it copying it from? This is happening on both my Mac and my PC.
Here are some screencaps of my Android SDK manager if that helps.
Comment actions -
I dug in a bit further and found out that PlayServicesResolver is grabbing files from the m2repository folders. I'm not sure exactly why it is not grabbing the latest versions of libraries, but some in-between versions.I'm not sure how it decides that as our min SDK version is 16, A bit lost here as to what I can do. Things were easier manually copying the jars over!
Comment actions -
Tried forcing the dependencies to use GCM 9.8.0 and v4 support 25.0.0 and still the same crash. Doen't really make sense.
Comment actions -
Well... I shut off Google Play services jar resolver and copied over the libraries from an older working project. I didn't get the crash at start anymore, but after allowing permissions it crashes at:
10-28 19:33:06.115: E/AndroidRuntime(14765): FATAL EXCEPTION: pool-6-thread-1
10-28 19:33:06.115: E/AndroidRuntime(14765): Process: com.sicks.pcocadhoc, PID: 14765
10-28 19:33:06.115: E/AndroidRuntime(14765): java.lang.Error: FATAL EXCEPTION [pool-6-thread-1]
10-28 19:33:06.115: E/AndroidRuntime(14765): Unity version : 5.3.4p5
10-28 19:33:06.115: E/AndroidRuntime(14765): Device model : LGE Nexus 5
10-28 19:33:06.115: E/AndroidRuntime(14765): Device fingerprint: google/hammerhead/hammerhead:6.0.1/M4B30X/3237893:user/release-keys
10-28 19:33:06.115: E/AndroidRuntime(14765): Caused by: java.lang.NoSuchMethodError: No virtual method areNotificationsEnabled()Z in class Landroid/support/v4/app/NotificationManagerCompat; or its super classes (declaration of 'android.support.v4.app.NotificationManagerCompat' appears in /data/app/com.sicks.pcocadhoc-2/base.apk)
10-28 19:33:06.115: E/AndroidRuntime(14765): at com.urbanairship.push.PushManager.isOptIn(PushManager.java:491)
10-28 19:33:06.115: E/AndroidRuntime(14765): at com.urbanairship.push.PushManager.getNextChannelRegistrationPayload(PushManager.java:503)
10-28 19:33:06.115: E/AndroidRuntime(14765): at com.urbanairship.push.ChannelJobHandler.onUpdateChannelRegistration(ChannelJobHandler.java:327)
10-28 19:33:06.115: E/AndroidRuntime(14765): at com.urbanairship.push.ChannelJobHandler.performJob(ChannelJobHandler.java:161)
10-28 19:33:06.115: E/AndroidRuntime(14765): at com.urbanairship.push.PushManager.onPerformJob(PushManager.java:326)
10-28 19:33:06.115: E/AndroidRuntime(14765): at com.urbanairship.AirshipService$1.run(AirshipService.java:168)
10-28 19:33:06.115: E/AndroidRuntime(14765): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
10-28 19:33:06.115: E/AndroidRuntime(14765): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
10-28 19:33:06.115: E/AndroidRuntime(14765): at java.lang.Thread.run(Thread.java:818)This is with firebase-common-9.0.2
play-services-base-9.0.2
play-services-basement-9.0.2
play-services-gcm-9.0.2
play-services-iid-9.0.2
play-services-tasks-9.0.2
support-annotations-23.4.0
support-v4-23.4.0
Booooo
Comment actions -
Michael Halka
Sean,
That seems strange that 3.0.0 would work and not 3.1.0. It doesn't seem like 3.1.0 made any changes to the Android plugin, so it should work.
Would you be able to post your Android Manifest here? I'd be curious to see what setup that is using.
Comment actions
Please sign in to leave a comment.
Comments
8 comments