2017-11-23 20 views
0

私はアンドロイドアプリとしてwebappにアクセスしたいのですが、これは単にwebviewを使ってそのwebappのURLを呼び出しているからです。 Webappには1つのjs変数があり、その変数にアンドロイドMainActivityにアクセスしたいのですが、どのようにしてAndroid MainActivityを使って別のWebアプリケーションにある変数にアクセスして値を割り当てることができますか?以下は、android MainActivityからjs変数にアクセスする

@Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     mWebview = new WebView(this); 

     mWebview.getSettings().setJavaScriptEnabled(true); 
     mWebview.getSettings().setDatabaseEnabled(true); 
     mWebview.getSettings().setLoadWithOverviewMode(true); 

     mWebview.setScrollBarStyle(WebView.SCROLLBARS_INSIDE_OVERLAY); 
     mWebview.setScrollbarFadingEnabled(false); 
     mWebview.loadUrl("http://www.mywebapp.com"); 

     setContentView(mWebview); 


    } 

私の主な問題は、どのようにアクセスし、さまざまなアプリ/ htmlのであるアンドロイドのMainActivityてjsの変数に値を代入することで、MainActivityのための私のコードスニペットのですか?

+2

これは、あなたに役立つかもしれないhttps://stackoverflow.com/questions/11287820/passing-a-javascript-variable-to-android-activity –

答えて

2
 // Call method in js or html 
Android.getImageUrl("text"); 

    // add this line in main activity.  
    webView.addJavascriptInterface(new JavaScriptInterface(this), "Android"); 

    // js value get in this method.(add this method in activity) 
    public class JavaScriptInterface { 
       Context mContext; 

       JavaScriptInterface(Context c) { 
        mContext = c; 
       } 

       @JavascriptInterface 
       public void getImageUrl(String text) { 
     // js value get here. 
        } 
       } 
      } 
+0

私はgetImageUrlを実装する必要がありますここで、();方法 ? –

+0

jsまたはhtmlでこのメソッドを呼び出すことができます – Pratik18

+0

はいjs/htmlから呼び出しますが、getImageUrl()メソッド定義はどこに実装されていますか? mainActivityや他の場所で? 私はそれを実装する必要がありますか?私はアンドロイドに新しい基本的な質問をして申し訳ありません。 –

関連する問題