2011-11-10 8 views
1

は、だから私はWebViewを作成し、(これは、ユーザーがListView項目を押したときに呼び出される)ので、のようなHTML文字列にコンテンツを設定したアンドロイド押下されるボタン後であっても再生し続ける:Flashビデオは

String html = "<html>" + 
    "<body style=\"padding:0px;margin:0px;border:0px none;\">" + 
    "<embed type=\"application/x-shockwave-flash\"" + 
    " id=\"stratos_embed\"" + 
    " width=\"100%25\" height=\"100%25"\"" + //%25 = % (escaped) 
    " src=\"myVideoSource.swf\"" + 
    " pluginspage=\"http://www.macromedia.com/go/getflashplayer\"" + 
    " allowfullscreen=\"true\" allowscriptaccess=\"always\">" + 
    "</embed>" + 
"</body></html>"; 


Intent intent = new Intent(getBaseContext(), VideoActivity.class); 
intent.putExtra("VIDEO_CONTENT", html); 
this.startActivity(intent); 

私はウェブのビデオとすべてのダンディのフラッシュビデオを見ることができます。

問題は、ビデオを再生し続ける(私はオーディオが聞こえますが)戻るボタンを押しても問題ありません。

私はfinish()を使用してアクティビティを強制終了していると読んだことがありますが、使用する場所がわかりません。私はそうのような私のVideoActivityクラスにそれを置く:

@Override 
public void onPause(){ 
    finish(); 
} 

しかし、私は戻ってボタンを押すと、エラーが発生し、アプリが強制的にクローズされます。 (これらのメソッドは、以前の目標のために隠されているので)また

// assuming mWebView is assigned in onCreate() .. 

@Override 
public void onPause() { 
    super.onPause(); 
    mWebView.onPause(); 
} 

@Override 
public void onResume() { 
    super.onResume(); 
    mWebView.onResume(); 
} 

、次はあまりにも動作するはずです:

答えて

4

ハニカム+ターゲットでは、あなたの活動のはonPause()onResume()でのWebViewのonPause()onResume()に呼び出しを追加することができます:

@Override 
protected void onDestroy() { 
    super.onDestroy(); 
    mWebView.loadUrl("about:blank"); 
} 
+0

このソリューションは、ハニカムの下では機能しません。 –

0

上記の方法は、私のために動作しませんでした、私はビジネスhereをした別のポストに出くわしました。

try { 
    Class.forName("android.webkit.WebView") 
      .getMethod("onPause", (Class[]) null) 
         .invoke(webview, (Object[]) null); 
} catch(Exception e) {} 
関連する問題