プログラミング

Android App: How to share video in external storage to MediaStore?

投稿日:2023年10月24日 更新日:

Code

Android Studio Electric Eel | 2022.1.1 Patch 2
[Java]

String path = xxx; //path of the video in the App’s external storage
String fname = xxx; // file name of the video

ContentValues values = new ContentValues();
values.put(MediaStore.Images.Media.DISPLAY_NAME, fname);
values.put(MediaStore.Images.Media.MIME_TYPE, “video/avc”);
values.put(MediaStore.Images.Media.IS_PENDING, 1);

ContentResolver resolver = getApplicationContext().getContentResolver();
Uri collection = MediaStore.Video.Media.getContentUri(MediaStore.VOLUME_EXTERNAL_PRIMARY);
Uri item = resolver.insert(collection, values);

InputStream in = new FileInputStream( path );

try (OutputStream out = getContentResolver().openOutputStream(item)) {
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();
}catch(Exception e) {

}

Note

InputStream in = getContentResolver().openInputStream( Uri.parse(path) )
// returns error: “No content provider”

-プログラミング

執筆者:

関連記事

AndroidアプリのGoogle Play Console審査が異常に長い場合の対処法

最近、Andoridアプリのアップデートを行いました。5000DLほどのアプリですがいつもならGoogle Play Console審査は数時間で完了しています。しかし5日ほど経っても審査が終わりませ …

サイトの仕様: ナビゲーションを解決する方法。Admobポリシーセンター広告制限

一年ほど前、突如としてAndroidアプリのAdmob広告に配信制限がかかりました。理由は「サイトの仕様: ナビゲーション」。これが厄介で、一体何を修正すべきなのかが全く分かりません。Web検索をかけ …

2重振り子の数値シミュレーション、解析から結果描画まで[Octave / Matlab / Android iPhoneアプリもあるよ]

久々に数値解析をやってみたくなりました。題材としては多くの人がやっている二重振り子が面白そうです。では言語は何にしようかと迷うところですが、コードを書いて計算して結果を描画するまで可能な「Octave …

Mac miniに移行して世界が変わった。MacBook Proは2度と買わない

MacBook Pro(2016)からMac miniに移行して半年くらいが経ちました。何の問題もなく快適に使用できています。移行の経緯とMac Mini使用の感想などについて述べたいと思います。 目 …

2重(N重)振り子の数値シミュレーション – Javascriptで計算から描画まで

2重振り子を数値シミュレーションをJavascriptでやってみます。Javascriptでやる利点は計算後の結果表示アニメーションまで容易に行える事だと言えます。2重振り子の解法に関する記事はWeb …

スポンサーリンク