プログラミング

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 Studio Admob Error “No Ads Config” from Domain “com.google.android.gms.ads

D/MyApp: {“Code”: 3,“Message”: “No ad config.”,“Domain&#82 …

MacOSアプリ公開:備忘録、ライブラリLink

Web上にMacOSアプリ公開に関する情報は少なくて苦労しています。iPhoneアプリと比較した場合、MacOSアプリはAdmobで稼ぐという手段がなく有料版リリースをするしかないので開発者からは敬遠 …

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

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

Admob アプリ起動時広告(Open ad)は使わない事にした話 – 例題通りやっても審査落ち?

Admob広告は初期にはバナーとインタースティシャルしかなかったと記憶しています。その後、少し複雑なリワード広告が登場しました。新しい広告タイプについてはWebに情報が増えてきたら実装に挑戦しています …

Android studio|FFmpegでやりたい放題するための準備

動画を利用したアプリを作成するにあたりFFmpegを使用できると大変便利です。Web上に多数の情報がありますが、数年前の記事は役に立たなかったり、実用的な情報が少なかったりします。本記事ではAndro …