Search Unity

Google Play API warnings started today

Discussion in 'Android' started by Kurt-Dekker, May 12, 2019.

  1. Kurt-Dekker

    Kurt-Dekker

    Joined:
    Mar 16, 2013
    Posts:
    3,776
    I started getting Google API greylisting warnings today, specifically:

    Code (csharp):
    1. Android compatibility
    2.  
    3. We’ve detected that your app is using unsupported APIs. Tests may not have found all unsupported APIs. Learn more
    4.  
    5. Unsupported
    6.  2 warnings identified
    7.  
    8. The following APIs are greylisted and Google can’t guarantee that they will work on existing versions of Android. Some may be already be restricted for your target SDK
    9.  
    10. API Landroid/media/AudioSystem;->getPrimaryOutputFrameCount()I
    11. 1 occurrence identified
    12.  
    13. API Landroid/media/AudioSystem;->getPrimaryOutputSamplingRate()I
    14. 1 occurrence identified
    Is there any user-facing setting in Unity to fix this problem?

    Is there any plan to back-port a fix for this to the Unity5 long-term support?
     
  2. Larry-Dietz

    Larry-Dietz

    Joined:
    Apr 22, 2010
    Posts:
    16
    I am getting the same thing using the current 2019 release.
     
    Kurt-Dekker likes this.
  3. cdnDave

    cdnDave

    Joined:
    Mar 13, 2013
    Posts:
    5
    I also have a warning that recently started showing up, although a different one. I'm using Unity 2018.3.11.

    Code (CSharp):
    1. API Ljava/lang/invoke/MethodHandles$Lookup;-><init>(Ljava/lang/Class;I)V
    2.  
    Stacktrace:
    Code (CSharp):
    1. StrictMode policy violation: android.os.strictmode.NonSdkApiUsedViolation: Ljava/lang/invoke/MethodHandles$Lookup;-><init>(Ljava/lang/Class;I)V
    2.     at android.os.StrictMode.lambda$static$1(StrictMode.java:428)
    3.     at android.os.-$$Lambda$StrictMode$lu9ekkHJ2HMz0jd3F8K8MnhenxQ.accept(Unknown Source:2)
    4.     at java.lang.Class.getDeclaredConstructorInternal(Native Method)
    5.     at java.lang.Class.getConstructor0(Class.java:2325)
    6.     at java.lang.Class.getDeclaredConstructor(Class.java:2166)
    7.     at bitter.jnibridge.JNIBridge$a.<init>(Unknown Source:25)
    8.     at bitter.jnibridge.JNIBridge.newInterfaceProxy(Unknown Source:8)
    9.     at com.unity3d.player.UnityPlayer.nativeRender(Native Method)
    10.     at com.unity3d.player.UnityPlayer.c(Unknown Source:0)
    11.     at com.unity3d.player.UnityPlayer$e$2.queueIdle(Unknown Source:72)
    12.     at android.os.MessageQueue.next(MessageQueue.java:395)
    13.     at android.os.Looper.loop(Looper.java:160)
    14.     at com.unity3d.player.UnityPlayer$e.run(Unknown Source:32)
     
  4. Kurt-Dekker

    Kurt-Dekker

    Joined:
    Mar 16, 2013
    Posts:
    3,776
    Am I reading this right it is a runtime error?

    If so, what Android OS are you running on?
     
  5. cdnDave

    cdnDave

    Joined:
    Mar 13, 2013
    Posts:
    5
    I haven't seen it show up as a runtime error myself, it popped up in the Android Compatibility section of the pre-launch report on the Google Play console. Under a warning stating

    The following APIs are grey-listed and Google can’t guarantee that they will work on existing versions of Android. Some may already be restricted for your target SDK
     
  6. ZeBronca

    ZeBronca

    Joined:
    Aug 22, 2012
    Posts:
    2
  7. Yury-Habets

    Yury-Habets

    Unity Technologies

    Joined:
    Nov 18, 2013
    Posts:
    1,052
    We are in contact with Google regarding these warnings. Will keep you posted.
     
    SiriusRU, Demanuele and ruslansmax like this.
  8. TikabVR

    TikabVR

    Joined:
    Dec 15, 2016
    Posts:
    3
    Also getting these. FWIW, we also got this one:
    Code (CSharp):
    1. StrictMode policy violation: android.os.strictmode.NonSdkApiUsedViolation: Ljava/lang/invoke/MethodHandles$Lookup;-><init>(Ljava/lang/Class;I)V
    2.     at android.os.StrictMode.lambda$static$1(StrictMode.java:428)
    3.     at android.os.-$$Lambda$StrictMode$lu9ekkHJ2HMz0jd3F8K8MnhenxQ.accept(Unknown Source:2)
    4.     at java.lang.Class.getDeclaredConstructorInternal(Native Method)
    5.     at java.lang.Class.getConstructor0(Class.java:2325)
    6.     at java.lang.Class.getDeclaredConstructor(Class.java:2166)
    7.     at bitter.jnibridge.JNIBridge$a.<init>(Unknown Source:25)
    8.     at bitter.jnibridge.JNIBridge.newInterfaceProxy(Unknown Source:8)
    9.     at com.unity3d.player.UnityPlayer.nativeRender(Native Method)
    10.     at com.unity3d.player.UnityPlayer.c(Unknown Source:0)
    11.     at com.unity3d.player.UnityPlayer$e$2.queueIdle(Unknown Source:72)
    12.     at android.os.MessageQueue.next(MessageQueue.java:395)
    13.     at android.os.Looper.loop(Looper.java:160)
    14.     at com.unity3d.player.UnityPlayer$e.run(Unknown Source:32)
     
  9. BlackFenix91

    BlackFenix91

    Joined:
    Jan 15, 2019
    Posts:
    2
    I have the same problem
     
  10. better_walk_away

    better_walk_away

    Joined:
    Jul 12, 2016
    Posts:
    114
    Same problem, I got three of these, hope we will get the response soon..:
    Code (CSharp):
    1. API Ljava/lang/invoke/MethodHandles$Lookup;-><init>(Ljava/lang/Class;I)V
    2. 21 occurrences identified. Only unique stack traces are shown.
    3. Stack trace 1
    4. StrictMode policy violation: android.os.strictmode.NonSdkApiUsedViolation: Ljava/lang/invoke/MethodHandles$Lookup;-><init>(Ljava/lang/Class;I)V
    5.     at android.os.StrictMode.lambda$static$1(StrictMode.java:428)
    6.     at android.os.-$$Lambda$StrictMode$lu9ekkHJ2HMz0jd3F8K8MnhenxQ.accept(Unknown Source:2)
    7.     at java.lang.Class.getDeclaredConstructorInternal(Native Method)
    8.     at java.lang.Class.getConstructor0(Class.java:2325)
    9.     at java.lang.Class.getDeclaredConstructor(Class.java:2166)
    10.     at bitter.jnibridge.JNIBridge$a.<init>(Unknown Source:25)
    11.     at bitter.jnibridge.JNIBridge.newInterfaceProxy(Unknown Source:8)
    12.     at com.unity3d.player.UnityPlayer.nativeDone(Native Method)
    13.     at com.unity3d.player.UnityPlayer.g(Unknown Source:3)
    14.     at com.unity3d.player.UnityPlayer.k(Unknown Source:0)
    15.     at com.unity3d.player.UnityPlayer$21.run(Unknown Source:2)
    16.     at android.os.Handler.handleCallback(Handler.java:873)
    17.     at android.os.Handler.dispatchMessage(Handler.java:99)
    18.     at android.os.Looper.loop(Looper.java:193)
    19.     at com.unity3d.player.UnityPlayer$e.run(Unknown Source:32)
    20. Stack trace 2
    21. StrictMode policy violation: android.os.strictmode.NonSdkApiUsedViolation: Ljava/lang/invoke/MethodHandles$Lookup;-><init>(Ljava/lang/Class;I)V
    22.     at android.os.StrictMode.lambda$static$1(StrictMode.java:428)
    23.     at android.os.-$$Lambda$StrictMode$lu9ekkHJ2HMz0jd3F8K8MnhenxQ.accept(Unknown Source:2)
    24.     at java.lang.Class.getDeclaredConstructorInternal(Native Method)
    25.     at java.lang.Class.getConstructor0(Class.java:2325)
    26.     at java.lang.Class.getDeclaredConstructor(Class.java:2166)
    27.     at bitter.jnibridge.JNIBridge$a.<init>(Unknown Source:25)
    28.     at bitter.jnibridge.JNIBridge.newInterfaceProxy(Unknown Source:8)
    29.     at com.unity3d.player.UnityPlayer.nativeRender(Native Method)
    30.     at com.unity3d.player.UnityPlayer.c(Unknown Source:0)
    31.     at com.unity3d.player.UnityPlayer$e$2.queueIdle(Unknown Source:72)
    32.     at android.os.MessageQueue.next(MessageQueue.java:395)
    33.     at android.os.Looper.loop(Looper.java:160)
    34.     at com.unity3d.player.UnityPlayer$e.run(Unknown Source:32)
    Code (CSharp):
    1. API Landroid/media/AudioSystem;->getPrimaryOutputFrameCount()I
    2. 2 occurrences identified. Only unique stack traces are shown.
    3. Stack trace 1
    4. StrictMode policy violation: android.os.strictmode.NonSdkApiUsedViolation: Landroid/media/AudioSystem;->getPrimaryOutputFrameCount()I
    5.     at android.os.StrictMode.lambda$static$1(StrictMode.java:428)
    6.     at android.os.-$$Lambda$StrictMode$lu9ekkHJ2HMz0jd3F8K8MnhenxQ.accept(Unknown Source:2)
    7.     at com.unity3d.player.UnityPlayer.nativeRender(Native Method)
    8.     at com.unity3d.player.UnityPlayer.c(Unknown Source:0)
    9.     at com.unity3d.player.UnityPlayer$e$2.queueIdle(Unknown Source:72)
    10.     at android.os.MessageQueue.next(MessageQueue.java:395)
    11.     at android.os.Looper.loop(Looper.java:160)
    12.     at com.unity3d.player.UnityPlayer$e.run(Unknown Source:32)
    13. [ 05-21 07:37:04.514 14111:14164 D/         ]
    14. PlayerBase::PlayerBase()
    15. [ 05-21 07:37:04.515 14111:14164 D/         ]
    16. TrackPlayerBase::TrackPlayerBase()
    17. Stack trace 2
    18. StrictMode policy violation: android.os.strictmode.NonSdkApiUsedViolation: Landroid/media/AudioSystem;->getPrimaryOutputFrameCount()I
    19.     at android.os.StrictMode.lambda$static$1(StrictMode.java:428)
    20.     at android.os.-$$Lambda$StrictMode$lu9ekkHJ2HMz0jd3F8K8MnhenxQ.accept(Unknown Source:2)
    21.     at com.unity3d.player.UnityPlayer.nativeRender(Native Method)
    22.     at com.unity3d.player.UnityPlayer.c(Unknown Source:0)
    23.     at com.unity3d.player.UnityPlayer$e$2.queueIdle(Unknown Source:72)
    24.     at android.os.MessageQueue.next(MessageQueue.java:395)
    25.     at android.os.Looper.loop(Looper.java:160)
    26.     at com.unity3d.player.UnityPlayer$e.run(Unknown Source:32)
    27. [ 05-21 08:06:10.738 11443:11484 D/         ]
    28. PlayerBase::PlayerBase()
    29. [ 05-21 08:06:10.739 11443:11484 D/         ]
    30. TrackPlayerBase::TrackPlayerBase()
    Code (CSharp):
    1. API Landroid/media/AudioSystem;->getPrimaryOutputSamplingRate()I
    2. 2 occurrences identified. Only unique stack traces are shown.
    3. Stack trace 1
    4. StrictMode policy violation: android.os.strictmode.NonSdkApiUsedViolation: Landroid/media/AudioSystem;->getPrimaryOutputSamplingRate()I
    5.     at android.os.StrictMode.lambda$static$1(StrictMode.java:428)
    6.     at android.os.-$$Lambda$StrictMode$lu9ekkHJ2HMz0jd3F8K8MnhenxQ.accept(Unknown Source:2)
    7.     at com.unity3d.player.UnityPlayer.nativeRender(Native Method)
    8.     at com.unity3d.player.UnityPlayer.c(Unknown Source:0)
    9.     at com.unity3d.player.UnityPlayer$e$2.queueIdle(Unknown Source:72)
    10.     at android.os.MessageQueue.next(MessageQueue.java:395)
    11.     at android.os.Looper.loop(Looper.java:160)
    12.     at com.unity3d.player.UnityPlayer$e.run(Unknown Source:32)
     
  11. breban1

    breban1

    Joined:
    Jun 7, 2016
    Posts:
    112
    Same thing here, 11 total "greylist" warnings. From AudioSystem, SmartSelectionEventTracker and bindServiceAsUser.

    Using Unity 2017.4.20f1 - 2017.4.27f1 (LTS versions).

    Started after April 11, but before May 9th for me.

    Thanks @Yury-Habets
     
  12. Demanuele

    Demanuele

    Joined:
    Sep 18, 2015
    Posts:
    20
    We're having same 11 greylist warnings on Unity 2018.221f1.

    Looking forward to an update @Yury-Habets .
    Thanks.
    Anthony
     
  13. HungPark

    HungPark

    Joined:
    Feb 28, 2017
    Posts:
    49
    I have the same problem when I uploaded APK file on Internaltest track of Google Console.
    I am waiting help from Yury-Habets.

    Thanks.
     
  14. DidzTM

    DidzTM

    Joined:
    Jan 30, 2018
    Posts:
    3
    Same thing for me on Unity 2019.

    Code (CSharp):
    1. StrictMode policy violation: android.os.strictmode.NonSdkApiUsedViolation: Ljava/lang/invoke/MethodHandles$Lookup;-><init>(Ljava/lang/Class;I)V
    2.    at android.os.StrictMode.lambda$static$1(StrictMode.java:428)
    3.    at android.os.-$$Lambda$StrictMode$lu9ekkHJ2HMz0jd3F8K8MnhenxQ.accept(Unknown Source:2)
    4.    at java.lang.Class.getDeclaredConstructorInternal(Native Method)
    5.    at java.lang.Class.getConstructor0(Class.java:2325)
    6.    at java.lang.Class.getDeclaredConstructor(Class.java:2166)
    7.    at bitter.jnibridge.JNIBridge$a.<init>(Unknown Source:25)
    8.    at bitter.jnibridge.JNIBridge.newInterfaceProxy(Unknown Source:8)
    9.    at com.unity3d.player.UnityPlayer.nativeFocusChanged(Native Method)
    10.    at com.unity3d.player.UnityPlayer.a(Unknown Source:0)
    11.    at com.unity3d.player.UnityPlayer$e$1.a(Unknown Source:19)
    12.    at com.unity3d.player.UnityPlayer$e$1.handleMessage(Unknown Source:149)
    13.    at android.os.Handler.dispatchMessage(Handler.java:102)
    14.    at android.os.Looper.loop(Looper.java:193)
    15.    at com.unity3d.player.UnityPlayer$e.run(Unknown Source:20)
    Code (CSharp):
    1. StrictMode policy violation: android.os.strictmode.NonSdkApiUsedViolation: Landroid/media/AudioSystem;->getPrimaryOutputFrameCount()I
    2.    at android.os.StrictMode.lambda$static$1(StrictMode.java:428)
    3.    at android.os.-$$Lambda$StrictMode$lu9ekkHJ2HMz0jd3F8K8MnhenxQ.accept(Unknown Source:2)
    4.    at com.unity3d.player.UnityPlayer.nativeRender(Native Method)
    5.    at com.unity3d.player.UnityPlayer.c(Unknown Source:0)
    6.    at com.unity3d.player.UnityPlayer$e$1.handleMessage(Unknown Source:88)
    7.    at android.os.Handler.dispatchMessage(Handler.java:102)
    8.    at android.os.Looper.loop(Looper.java:193)
    9.    at com.unity3d.player.UnityPlayer$e.run(Unknown Source:20)
    10. [ 06-11 08:43:01.947 15218:15246 D/         ]
    11. PlayerBase::PlayerBase()
    12. [ 06-11 08:43:01.948 15218:15246 D/         ]
    13. TrackPlayerBase::TrackPlayerBase()
    Code (CSharp):
    1. StrictMode policy violation: android.os.strictmode.NonSdkApiUsedViolation: Landroid/media/AudioSystem;->getPrimaryOutputSamplingRate()I
    2.    at android.os.StrictMode.lambda$static$1(StrictMode.java:428)
    3.    at android.os.-$$Lambda$StrictMode$lu9ekkHJ2HMz0jd3F8K8MnhenxQ.accept(Unknown Source:2)
    4.    at com.unity3d.player.UnityPlayer.nativeRender(Native Method)
    5.    at com.unity3d.player.UnityPlayer.c(Unknown Source:0)
    6.    at com.unity3d.player.UnityPlayer$e$1.handleMessage(Unknown Source:88)
    7.    at android.os.Handler.dispatchMessage(Handler.java:102)
    8.    at android.os.Looper.loop(Looper.java:193)
     
  15. TELE5

    TELE5

    Joined:
    Jun 12, 2019
    Posts:
    1
    I am also getting these warnings:

    Code (CSharp):
    1. StrictMode policy violation: android.os.strictmode.NonSdkApiUsedViolation: Ljava/lang/invoke/MethodHandles$Lookup;-><init>(Ljava/lang/Class;I)V
    2.     at android.os.StrictMode.lambda$static$1(StrictMode.java:428)
    3.     at android.os.-$$Lambda$StrictMode$lu9ekkHJ2HMz0jd3F8K8MnhenxQ.accept(Unknown Source:2)
    4.     at java.lang.Class.getDeclaredConstructorInternal(Native Method)
    5.     at java.lang.Class.getConstructor0(Class.java:2325)
    6.     at java.lang.Class.getDeclaredConstructor(Class.java:2166)
    7.     at bitter.jnibridge.JNIBridge$a.<init>(Unknown Source:25)
    8.     at bitter.jnibridge.JNIBridge.newInterfaceProxy(Unknown Source:8)
    9.     at com.unity3d.player.UnityPlayer.nativeDone(Native Method)
    10.     at com.unity3d.player.UnityPlayer.g(Unknown Source:3)
    11.     at com.unity3d.player.UnityPlayer.k(Unknown Source:0)
    12.     at com.unity3d.player.UnityPlayer$22.run(Unknown Source:2)
    13.     at android.os.Handler.handleCallback(Handler.java:873)
    14.     at android.os.Handler.dispatchMessage(Handler.java:99)
    15.     at android.os.Looper.loop(Looper.java:193)
    16.     at com.unity3d.player.UnityPlayer$e.run(Unknown Source:20)
    Code (CSharp):
    1. StrictMode policy violation: android.os.strictmode.NonSdkApiUsedViolation: Ljava/lang/invoke/MethodHandles$Lookup;-><init>(Ljava/lang/Class;I)V
    2.     at android.os.StrictMode.lambda$static$1(StrictMode.java:428)
    3.     at android.os.-$$Lambda$StrictMode$lu9ekkHJ2HMz0jd3F8K8MnhenxQ.accept(Unknown Source:2)
    4.     at java.lang.Class.getDeclaredConstructorInternal(Native Method)
    5.     at java.lang.Class.getConstructor0(Class.java:2325)
    6.     at java.lang.Class.getDeclaredConstructor(Class.java:2166)
    7.     at bitter.jnibridge.JNIBridge$a.<init>(Unknown Source:25)
    8.     at bitter.jnibridge.JNIBridge.newInterfaceProxy(Unknown Source:8)
    9.     at com.unity3d.player.UnityPlayer.nativeRender(Native Method)
    10.     at com.unity3d.player.UnityPlayer.c(Unknown Source:0)
    11.     at com.unity3d.player.UnityPlayer$e$1.handleMessage(Unknown Source:88)
    12.     at android.os.Handler.dispatchMessage(Handler.java:102)
    13.     at android.os.Looper.loop(Looper.java:193)
    14.     at com.unity3d.player.UnityPlayer$e.run(Unknown Source:20)
    Code (CSharp):
    1. StrictMode policy violation: android.os.strictmode.NonSdkApiUsedViolation: Landroid/media/AudioSystem;->getPrimaryOutputFrameCount()I
    2.     at android.os.StrictMode.lambda$static$1(StrictMode.java:428)
    3.     at android.os.-$$Lambda$StrictMode$lu9ekkHJ2HMz0jd3F8K8MnhenxQ.accept(Unknown Source:2)
    4.     at com.unity3d.player.UnityPlayer.nativeRender(Native Method)
    5.     at com.unity3d.player.UnityPlayer.c(Unknown Source:0)
    6.     at com.unity3d.player.UnityPlayer$e$1.handleMessage(Unknown Source:88)
    7.     at android.os.Handler.dispatchMessage(Handler.java:102)
    8.     at android.os.Looper.loop(Looper.java:193)
    9.     at com.unity3d.player.UnityPlayer$e.run(Unknown Source:20)
    10. [ 06-12 08:13:11.912 13203:13258 D/         ]
    11. PlayerBase::PlayerBase()
    12. [ 06-12 08:13:11.912 13203:13258 D/         ]
    13. TrackPlayerBase::TrackPlayerBase()
    Code (CSharp):
    1. StrictMode policy violation: android.os.strictmode.NonSdkApiUsedViolation: Landroid/media/AudioSystem;->getPrimaryOutputSamplingRate()I
    2.     at android.os.StrictMode.lambda$static$1(StrictMode.java:428)
    3.     at android.os.-$$Lambda$StrictMode$lu9ekkHJ2HMz0jd3F8K8MnhenxQ.accept(Unknown Source:2)
    4.     at com.unity3d.player.UnityPlayer.nativeRender(Native Method)
    5.     at com.unity3d.player.UnityPlayer.c(Unknown Source:0)
    6.     at com.unity3d.player.UnityPlayer$e$1.handleMessage(Unknown Source:88)
    7.     at android.os.Handler.dispatchMessage(Handler.java:102)
    8.     at android.os.Looper.loop(Looper.java:193)
    9.     at com.unity3d.player.UnityPlayer$e.run(Unknown Source:20)
    What do I need to do about it?
     
  16. wadavie

    wadavie

    Joined:
    May 25, 2018
    Posts:
    4
    I upgraded from 2018 to 2019 release and I am getting 13 of these now.
     
  17. domdev

    domdev

    Joined:
    Feb 2, 2015
    Posts:
    248
    any update to this?
     
  18. Yury-Habets

    Yury-Habets

    Unity Technologies

    Joined:
    Nov 18, 2013
    Posts:
    1,052
    The official message is coming soon.
     
    sathya and SiriusRU like this.
  19. KevinQIAN

    KevinQIAN

    Joined:
    Jun 10, 2019
    Posts:
    1
    Hope to solve it soon.
     
  20. oppyJ

    oppyJ

    Joined:
    Aug 2, 2013
    Posts:
    3
    Hey all,

    Thanks for looking into this problem.

    I have 2 Unity projects and I was just about to release them (one being an updated app and the 2nd being a new release) but I happened to notice the 'pre-launch report' menu item in Google Play. For my 2 apps I have the errors below.

    My 2 apps are education based, i.e. text boxes, audio playing from file asset, buttons, toggles, screen navigation,impage backgrounds, android device back button functionality, link to website online, etc. No animation, they are 2D set up, no saving data apart from player prefs of volume setting,

    errors:

    App 1 updated app
    API Ljava/lang/invoke/MethodHandles$Lookup;-><init>(Ljava/lang/Class;I)V
    20 occurrences identified. Only unique stack traces are shown.

    API Landroid/media/AudioSystem;->getPrimaryOutputFrameCount()I
    2 occurrences identified. Only unique stack traces are shown.

    API Landroid/media/AudioSystem;->getPrimaryOutputSamplingRate()I
    2 occurrences identified. Only unique stack traces are shown.

    ---------------------------------------------------
    App2 was to be a newly released app

    API Ljava/lang/invoke/MethodHandles$Lookup;-><init>(Ljava/lang/Class;I)V
    22 occurrences identified. Only unique stack traces are shown.

    API Landroid/media/AudioSystem;->getPrimaryOutputFrameCount()I
    2 occurrences identified. Only unique stack traces are shown.

    API Landroid/media/AudioSystem;->getPrimaryOutputSamplingRate()I
    2 occurrences identified. Only unique stack traces are shown.

    I am learning as I go with Unity dev, I come from a java background but am making apps using unity in c# now. I have 2 questions, I wonder if anyone could give their opinions please? I will of course wait for the reply/ongoing search for info on the overall issue of this thread/topic.

    1) I wonder with using Unity components, and all that goes into the how unity builds the .apk, I wonder if there is always going to be these errors in some form. We can change our code to utilise public SDK's but is Unity doing the same? What is the vibe out there in the Unity community?

    2) Given the restrictions on non-SDK interfaces is due to "Starting in Android 9 (API level 28), the platform restricts which non-SDK interfaces your app can use..." - we have all read on developer. android. com. is it probable that if we have the 'Unity -->Build Settings -->Target API' not higher than 27 , will this remove the problems? Yes we will loose the current 10.4% market share of devices that use Android 9, but its a trade off for the amount of time to try and combat these issues to get zero errors (if indeed it is something we can fix, given your thoughts on 1)above)

    thanks
     
  21. oppyJ

    oppyJ

    Joined:
    Aug 2, 2013
    Posts:
    3
    Oh I see that you cannot just lower the API: (when --> uploading new .apk to Google Dev console )

    Warnings
    Your app currently targets API level 26 and must target at least API level 28 to ensure it is built on the latest APIs optimized for security and performance.

    From August 2019, new apps must target at least Android 9.0 (API level 28).
    From November 2019, app updates must target Android 9.0 (API level 28).

    Tip: Change your app's target API level.

    So with regard my question 2) above this is not possible anyway.
     
  22. shadowthunder24

    shadowthunder24

    Joined:
    Jun 19, 2019
    Posts:
    8
    Same problem here:

    Code (CSharp):
    1. Your app uses 13 non-SDK interfaces, which are incompatible with Android P+. Take a look at the logs to see detailed stack traces. Sample of used non-SDK interfaces:
    2. Landroid/content/Context;->bindServiceAsUser(Landroid/content/Intent;Landroid/content/ServiceConnection;ILandroid/os/Handler;Landroid/os/UserHandle;)Z
    3. Landroid/media/AudioSystem;->getPrimaryOutputFrameCount()I
    4. Landroid/media/AudioSystem;->getPrimaryOutputSamplingRate()I
    5. Landroid/view/textclassifier/logging/SmartSelectionEventTracker$SelectionEvent;->selectionAction(III)Landroid/view/textclassifier/logging/SmartSelectionEventTracker$SelectionEvent;
    6. Landroid/view/textclassifier/logging/SmartSelectionEventTracker$SelectionEvent;->selectionAction(IIILandroid/view/textclassifier/TextClassification;)Landroid/view/textclassifier/logging/SmartSelectionEventTracker$SelectionEvent;
    7. Landroid/view/textclassifier/logging/SmartSelectionEventTracker$SelectionEvent;->selectionModified(II)Landroid/view/textclassifier/logging/SmartSelectionEventTracker$SelectionEvent;
    8. Landroid/view/textclassifier/logging/SmartSelectionEventTracker$SelectionEvent;->selectionModified(IILandroid/view/textclassifier/TextClassification;)Landroid/view/textclassifier/logging/SmartSelectionEventTracker$SelectionEvent;
    9. Landroid/view/textclassifier/logging/SmartSelectionEventTracker$SelectionEvent;->selectionModified(IILandroid/view/textclassifier/TextSelection;)Landroid/view/textclassifier/logging/SmartSelectionEventTracker$SelectionEvent;
    10. Landroid/view/textclassifier/logging/SmartSelectionEventTracker$SelectionEvent;->selectionStarted(I)Landroid/view/textclassifier/logging/SmartSelectionEventTracker$SelectionEvent;
    11. Landroid/view/textclassifier/logging/SmartSelectionEventTracker;-><init>(Landroid/content/Context;I)V
    12. Landroid/view/textclassifier/logging/SmartSelectionEventTracker;->logEvent(Landroid/view/textclassifier/logging/SmartSelectionEventTracker$SelectionEvent;)V
    13. Ljava/lang/invoke/MethodHandles$Lookup;-><init>(Ljava/lang/Class;I)V
    14. Ljava/nio/Buffer;->address:J

    Considering I'm using Unity's SDK with Google Play Games + AdMob integration + Native Share (from Unity Assets store)
     
  23. oppyJ

    oppyJ

    Joined:
    Aug 2, 2013
    Posts:
    3
    Sure you have moved along on the issue, wonder if Unity has a date in mind for giving the update? thanks
     
    AlbertZR and AndryInt like this.
  24. Sparkline

    Sparkline

    Joined:
    Feb 8, 2013
    Posts:
    60
    Same here. Using unity 2018.3.13. Submitted beta version and google found 3 issues with using unstable/deprecated API
    upload_2019-7-2_9-49-57.png
     
  25. pixelnodrock

    pixelnodrock

    Joined:
    Jan 18, 2018
    Posts:
    1
    When exactly is soon, please? It has been more than two weeks now and not a word from Unity.
     
  26. PeterLauris

    PeterLauris

    Joined:
    Feb 17, 2014
    Posts:
    1
    Would love to hear a response regarding this issue. We are using Unity 2018.2.21f.
     
  27. shadowthunder24

    shadowthunder24

    Joined:
    Jun 19, 2019
    Posts:
    8
    I have realised this issue specifically occurs for me when integrating Ad-Mob. This is shown by Google Firelab's Robo Test. I get a native crash and a message saying

    "Your app uses 13 non-SDK interfaces, which are incompatible with Android P+. Take a look at the logs to see detailed stack traces. Sample of used non-SDK interfaces:"

    I don't know how to fix this issue. Please get back to us on this matter as this will probably impact all users that are using external plugins such as AdMob targetting for API level 28 and above. I'm using Unity 2019.1.8f1.

    Can we please get an update on the situation now since it's been over 3 weeks since your last response.
     
  28. KevinK2K

    KevinK2K

    Joined:
    Aug 16, 2018
    Posts:
    19
    I'm supposing that grey listed isn't too big of an issue in the immediate term, and that a Unity update will come along to address this before the grey becomes black. I do wonder though whether issues such as this have any impact on the Play Store ranking algorithm (maybe it's just my conspiratorial head in overdrive here but if I was in control of an app store I'd very possibly penalise apps with pre-launch warnings).
     
  29. vrbloom

    vrbloom

    Joined:
    Apr 13, 2018
    Posts:
    1
    I am getting 3 warnings about grey listed APIs, is it possible to track down and locate the source in Unity as the stack trace from the Google Play Pre-launch Report is not helpful? Using Unity 2018.3.7

    StrictMode policy violation: android.os.strictmode.NonSdkApiUsedViolation: Ljava/lang/invoke/MethodHandles$Lookup;-><init>(Ljava/lang/Class;I)V

    StrictMode policy violation: android.os.strictmode.NonSdkApiUsedViolation: Landroid/media/AudioSystem;->getPrimaryOutputFrameCount()I

    StrictMode policy violation: android.os.strictmode.NonSdkApiUsedViolation: Landroid/media/AudioSystem;->getPrimaryOutputSamplingRate()I
     
  30. Sparkline

    Sparkline

    Joined:
    Feb 8, 2013
    Posts:
    60
    Still no response from Unity( What do you do guys? Maybe moved to other unity version? Please advice.
     
  31. KevinK2K

    KevinK2K

    Joined:
    Aug 16, 2018
    Posts:
    19
    Recently published an update of one of my games that had been showing 13 severe warnings of the type being mentioned here. The pre-launch report on the new version said that the Android 9.0 tests were not available (something I've never seen before), so it only performed 10 out of 12 tests, but only came out with 1 accessibility warning this time. It's stuck on 'processing update' now and has been for almost 24 hours (again an unusual situation, updates normally go live to alpha long before the pre-launch report completes).