Search Unity

Exception with Android webview and AndroidJavaClass in Unity

Discussion in 'Scripting' started by abarra, Sep 1, 2015.

  1. abarra

    abarra

    Joined:
    Dec 16, 2013
    Posts:
    3
    Hi guys,

    I'm working on create an Android java webview ( new WebView() ) and I'm getting an exception and I don't have a clue to know what the problem is, my code is.

    1.- In the unity project the code is calling the java code with AndroidJavaClass for example:

    Debug.Log ("Awake start!");
    AndroidJavaClass m_jniUnity = new AndroidJavaClass( "package.name.SingletonClass" );
    m_jniUnity.CallStatic ("createWebView", null);

    2.- One Android Studio project to create the webview, The code creates the webview with
    UnityPlayer.currentActivity as Activity, the current activity is an custom class that extends of
    UnityPlayerActivity.

    //Activity
    public class MyUnityActivity extends UnityPlayerActivity {

    //WebView creation
    Activity sActivity = UnityPlayer.currentActivity; // Should be a MyUnityActivity
    mWebView = new WebView(sActivity); // I checked the activity and it is the expected object

    3.- The exception, at the moment when the WebView is created I got this error:

    09-01 00:26:28.446 17536-17554/? I/Unity﹕ AndroidJavaException: java.lang.NullPointerException: Attempt to read from field 'android.os.MessageQueue android.os.Looper.mQueue' on a null object reference
    at UnityEngine.AndroidJNISafe.CheckException () [0x00000] in <filename unknown>:0
    at UnityEngine.AndroidJNISafe.CallStaticVoidMethod (IntPtr clazz, IntPtr methodID, UnityEngine.jvalue[] args) [0x00000] in <filename unknown>:0
    at UnityEngine.AndroidJavaObject._CallStatic (System.String methodName, System.Object[] args) [0x00000] in <filename unknown>:0
    at UnityEngine.AndroidJavaObject.CallStatic (System.String methodName, System.Object[] args) [0x00000] in <filename unknown>:0
    at MyApp.Awake () [0x00000] in <filename unknown>:0

    Do you have an idea ?


    Thanks.