2011-12-25 10 views
8

andriodアプリで私のアイデアに問題があります。ビデオを再生したいのですが、interenetからダウンロードしたくありません。他のケースでは、私はそれをデバイス上に持っていたい。アンドロイドアプリケーションにビデオ再生とリソースを追加する方法

人はアンドロイドマーケットからダウンロードし、ダウンロードせずにビデオを再生できます。私はそれのためのいくつかの解決策を考え出したが、どれも良いものではない。

最初にアプリケーションリソースに追加していましたが、そこにビデオを置くことはできません。

2番目はインストール時にフォルダを追加したり作成したり(より具体的には最初のonCreateメソッド)、アプリケーションからビデオをコピーしていました。さて、悪い選択肢はありません(たとえば、バックグラウンドサービスを使ってWebから一度だけビデオをダウンロードできます)が、アンインストール時に削除する方法はわかりません。

だから誰も知っている、またはそれについて考えている?

答えて

14

あなたはです。は、ビデオをアプリリソースに入れます。ちょうどres/rawフォルダに入れます。このように再生することができます:

VideoView videoview = (VideoView) findViewById(R.id.videoview); 

Uri uri = Uri.parse("android.resource://"+getPackageName()+"/"+R.raw.splash); 

videoview.setVideoURI(uri); 
videoview.start(); 

ここでは、ビデオのサイズを考慮する必要があります。ビデオファイルがかなり大きくなる可能性があるため、結果として得られるapkファイルも容認できないほど大きくなる可能性があります。個人的には、私はめったに10メガ(おそらく例外があります)の重さの市場からアプリをダウンロードしたいとは思わないでしょう。

+0

私はもう少し文脈を示す[これの例](http://stackoverflow.com/a/41061887/3681880)を作った。私は 'ffmpeg'を使って、受け入れ可能な品質を保ちながら短いビデオクリップを非常に合理的なサイズにすることができることを発見しました。 – Suragch

+0

@Suragch今日あなたが「合理的なサイズ」と考えるものは、5年前の「妥当なサイズ」とはまったく異なります。今日私は、10メガ以上のアプリの出版を躊躇しません。 5年前、クライアントの要件の1つは、アプリ全体が1メガを超えないことでした。 –

関連する問題