2016-08-24 17 views
0

Adob​​e Flash Player apkをアセットからSDカードにコピーしてインストールし、Intentを使用してインストールしました。その後も、webViewは.swfファイルを読み込むことができません。Androidで.swfファイルを再生するには?

代わりに、Androidアプリケーションを開発するためにAdobe Flash Builderを使用する必要があります。私の主な要件は、サーバーから.swfファイルを再生することです!

ここに私のコードです。

@Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_flash); 

     installFlashPlayer(); 


//Fake Url 
//  String url = "http://www.test.com/test.swf"; 
// 
//  webView = (WebView) findViewById(R.id.webView); 
//  webView.getSettings().setPluginState(WebSettings.PluginState.ON); 
//  webView.setWebViewClient(new WebViewClient()); 
// 
//  webView.getSettings().setUseWideViewPort(true); 
//  webView.getSettings().setLoadWithOverviewMode(true); 
//  webView.loadUrl(url); 

    } 

    void installFlashPlayer(){ 
     AssetManager assetManager = FlashActivity.this.getAssets(); 

     InputStream in = null; 
     OutputStream out = null; 

     try { 
      in = assetManager.open("flp.apk"); 
      out = new FileOutputStream(Environment.getExternalStorageDirectory() + "/flp.apk"); 

      byte[] buffer = new byte[1024]; 

      int read; 
      while((read = in.read(buffer)) != -1) { 

       out.write(buffer, 0, read); 

      } 

      in.close(); 
      in = null; 

      out.flush(); 
      out.close(); 
      out = null; 

      Intent intent = new Intent(Intent.ACTION_VIEW); 

      intent.setDataAndType(Uri.fromFile(new File(Environment.getExternalStorageDirectory() + "/flp.apk")), 
        "application/vnd.android.package-archive"); 

      startActivity(intent); 

     } catch(Exception e) { } 
    } 

答えて

0

あなたは、私は私のプロジェクトでこれを使用し"GeckoView of Firefox" を使用することができます。

swfファイルを再生するのに便利です。

また、あなたは悪いアイデアは、あなたが(私が間違って覚えてdidnot場合)GeckoViewを使用することを選択した場合GeckoViewはJNIで動作しますので、あなたのAPKは20〜25 MBに増加しますです

... GeckoViewでplugin.state.flash = true;を設定する必要があります...

関連する問題