2011-12-13 5 views
0

webviewを使用して単純なアプリケーションを構築しようとしていますが、webviewクラスを使用しているときにphonegap関数を使用できません。私が "super"を使用すると、phonegap関数は正常に動作します。私の奇妙な言葉を許してください。webviewでphonegap関数が動作しない

///////////////// JAVA ///////////////////////

public class MainStart extends DroidGap { 

HTML5WebView mWebView; 

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

    CookieSyncManager.createInstance(this); 
    CookieSyncManager.getInstance().sync(); 

    mWebView = new HTML5WebView(this); 
    mWebView.getSettings().setJavaScriptEnabled(true); 
    mWebView.addJavascriptInterface(new JavaScriptInterface(this), "MyAndroid"); 
    mWebView.getSettings().setPluginsEnabled(true); 

    mWebView.loadUrl("file:///android_asset/www/index.html"); // phonegap function does not work 

    super.loadUrl("file:///android_asset/www/index.html"); // phonegap function works here 

    } 

} 

/////////////// JAVASCRIPT /////////////////////////

function onDeviceReady(){ 

     navigator.notification.alert("PhoneGap is working"); 

} 
+0

スーパータイプはDroidGapです。 mWebViewのではない –

+0

洞察をいただきありがとうございます。私は学ぶことがたくさんある。 – user1096726

答えて

0

PhoneGapに設定されているWebViewには、自分のWebViewで参照していない機能(Javascriptブリッジなど)が含まれています.HTMLページ内からネイティブコードを呼び出すことはできません。

私はなぜ、標準で提供されているWebViewを使用するのではなく、独自のWebViewを再作成しようとしているのかと聞かれますか?

+0

標準のビデオでは

+0

[この質問](http://stackoverflow.com/questions/4854153/how-to-display-local-video-in-a-phonegap-app)によると、ビデオタグでは本当に方法はありません。しかし、明らかに、新しいWebView全体を再作成することなくPhoneGapでビデオを稼働させる方法(https://groups.google.com/forum/#!topic/phonegap/boMH5X2FfN0)があります; – Leon

+0

PhoneGapはまだオープンソースなので、あなた自身のバージョンを[github](https://github.com/phonegap)からフォークし、実際にyarのニーズに合わせてソースコードを変更することができます!だれかが知っている、多分いつでも彼らはあなたの変更を引っ張り、私たちはそれからすべての恩恵を受けることができます:D – Leon

関連する問題