2015-10-23 3 views
0

Я могу запустить Android умысел в WebView так:Запуск Android намерения из браузера с статистов

<a href="intent:#Intent;action=...;end">Do something</a> 

Но я изо всех сил, чтобы повторить это для намерений с «имеет статистов» бит. Например, как я включаю это:

final Intent intent1 = new Intent(android.content.Intent.ACTION_SEND); 
intent1.setType("text/plain"); 
intent1.putExtra(android.content.Intent.EXTRA_TEXT, "AAA"); 
startActivity(intent1); 

в одну строку URI, так что он имеет «putExtra» часть? До сих пор я только дошел до конца и изо всех сил пытаюсь найти примеры, которые делают это.

<a href="intent:#Intent;action=android.content.Intent.ACTION_SEND;type=text/plain;end">Send something</a> 

Заранее спасибо

ответ

1

Самое простое решение, чтобы добавить работу через JS:

Java:

WebSettings ws = wv.getSettings(); 
    ws.setJavaScriptEnabled(true); 
    wv.addJavascriptInterface(new Object() 
    { 
     @JavascriptInterface   // For API 17+ 
     public void performClick(String strl) 
     { 
      final Intent intent1 = new Intent(android.content.Intent.ACTION_SEND); 
      intent1.setType("text/plain"); 
      intent1.putExtra(android.content.Intent.EXTRA_TEXT, strl); 
      startActivity(intent1); 
     } 
    }, "ok"); 

HTML:

<button type="button" value="someValue" onclick="ok.performClick(this.value);">OK</button> 

Подробнее и примеры здесь: http://developer.android.com/guide/webapps/webview.html#BindingJavaScript

+0

Я надеялся, что есть способ избежать необходимости возиться с кодом Java. Но на самом деле это оказалось проще, чем ожидалось, и работает как шарм. Благодаря! – S200

Смежные вопросы