WebView und Java Object - gelöst

  • 1 Antworten
  • Neuester Beitrag
Diskutiere WebView und Java Object - gelöst im Android App Entwicklung im Bereich Betriebssysteme & Apps.
N

Nonsens

Gast
hi alle,

ich möchte meinen Launcher um eine neue Funktion erweitern. Aus einer HTML-Seite, die als Hintergrund dienen soll, sollen per JevascriptInterface APP gestartet werden können. Es funktioniert soweit bis auf das Starten von APP da bekomme ich eine SecurityException.
Die Frage ist nun ob ich aus der eingebeteten Klasse JsObject eine APP starten kann oder geht das nur von der Klasse Launcher aus.



Code:
public class Launcher extends Activity {
[cut]
 class JsObject {
        @JavascriptInterface
        public void startAPP(String pkg, String cls){
            try{
                Intent intent = new Intent();
                intent.setComponent(new ComponentName(pkg, cls));
                startActivity(intent);}
            catch(SecurityException s){
                Toast.makeText(getApplicationContext(),"JsObject: " + s.getMessage(), Toast.LENGTH_LONG).show();
                s.printStackTrace();
            }
            catch(Exception e){
                e.printStackTrace();
            }
        }
    }
}
 
N

Nonsens

Gast
Das Problem ist gelöst.

Die Klasse muss im Manifest mit android:exported="true" für externen Zugriff freigegeben sein!

Super, nun kann ich mit meiner Hintergrund-Html-Seite jede APP starten. Ihr fragt euch bestimmt wozu das gut sei soll :biggrin:

Mit Html lässt sich viel bequemer einen schönen Hintergrund mit Images und Buttons basteln und diesen Images und Buttons kann man dann mit dem Javascript Interface auch gleich die APPS starten. Einziger Wermutstropfen: die Klassennamen herausfinden. Aber dafür gibst ja schönte Tools wie etwas ManifestViewer.

grüße
 
Ähnliche Themen - WebView und Java Object - gelöst Antworten Datum
3
17
5