2014-04-07 6 views
1

Android 애플리케이션에서 unity3d로 웹보기를 표시하려고합니다. 이 테스트의 구성 요소는 다음과 같습니다 : 내가 볼 수 있습니다 위의 코드에서Unity3d에서 WebView Android가 표시되지 않습니다.

using (AndroidJavaClass javaInterClass = new AndroidJavaClass("mypackage.MyActivity")) { 
      if (javaInterClass != null) { 
      Debug.Log ("MyActivity class is NOT null"); 

      try { 
       Debug.Log ("before my activity"); 
       javaInterClass.Call ("nonStaticMethod"); 
       Debug.Log ("after my activity"); 
      } catch (Exception e) { 
       Debug.Log ("exception"); 
       Console.WriteLine (e); 
      } 

     } else { 
      Debug.Log ("MyActivity class is null"); 
     } 
    } 

: 클래스

public void nonStaticMethod() { 
     Log.d("TAG", "Non-static method was called from my android class"); 
     String url = "http://roadtoautomation.blogspot.ro/2014/02/road-to-setup-and-create-first-appium.html"; 
     Toast.makeText(mContext, "URL: " + url, Toast.LENGTH_SHORT).show(); 

     webView = new WebView(mContext); 
     Log.d("Interstitialactivity", "webView: " + webView); 
     Toast.makeText(mContext, "webView: " + webView, Toast.LENGTH_SHORT).show(); 

     webView.loadUrl(url); // webview is not null 

    } 

모노 코드 : 안드로이드 라이브러리 (A I는 테스트 목적으로 전화하는 방법이있다) android 클래스가 null이 아니지만이 "javaInterClass.Call ("nonStaticMethod ");")의 webview가 표시되지 않습니다.

webview를 지원하기 위해 unity3d에 플러그인을 추가해야합니까? 감사. 유니티의 UI를 통해 웹보기를 열려면

답변

0

당신은 활동이 필요하거나 그렇지 않으면이

Uri uri = Uri.parse("http://www.example.com"); Intent intent = new Intent(Intent.ACTION_VIEW, uri); startActivity(intent);

을 시도 할 수 있지만, 유니티의 Application.LoadUrl (URL)와 동일한 작동 연합의 활동을 재정의해야

+0

안녕하세요, 내 android 활동이 UnityPlayerActivity를 확장합니다. 위의 코드를 추가했지만 아무것도 기록하지 않거나 표시하고 싶지 않습니다. 어떤 부분에서 어떤 객체 (무엇보다 중요한) : android 또는 unity3d가 LoadUrl (URL)을 호출해야합니다. 시간 내 주셔서 감사합니다 – user1140656

+1

활동을 확장했다면, [이 코드] (http://pastebin.com/Kb3ZZbm5)를 사용하고 있습니다. 시도해 볼 수 있습니다. Unity의 UI 위에 webview를 배치합니다. 그건 그렇고 Application.LoadUrl (URL) 미안 해요 Application.OpenUrl (url), 당신은 Unity 내부의 스크립트에서 원하는 곳 어디서나 부를 수 있습니다. – nexx

+0

나는 Application.OpenURL ("http://unity3d.com/")을 사용할 수있다. 그리고 안드로이드 프로젝트 부분에서 변수를 얻을 수 있다면 이것을 사용할 것입니다. 고마워. 나는 당신의 대답을 옳은 것으로 정할 것이다. 그것은 나를 도왔 기 때문이다. – user1140656

관련 문제