Android Marshmallow (6.0) でのフォルダー作成の問題を解決する方法?

DDD
リリース: 2024-10-24 03:48:02
オリジナル
521 人が閲覧しました

How to Fix Folder Creation Issues on Android Marshmallow (6.0)?

Marshmallow Android フォルダー作成の問題

Android 6.0 (Marshmallow) でのフォルダーの作成に問題がありますか?正しい場所に来ました!

一部の Marshmallow デバイスでは、新しいフォルダーの作成が不安定になります。 Android 5.0 ではすべて問題なく動作しますが、Marshmallow では作成が成功する場合と失敗する場合があります。何故ですか?

権限の問題

Marshmallow では、外部ストレージの権限に対するより厳密な制御が導入されています。 Android M 以降の場合、外部ストレージを使用する前に明示的なユーザー許可が必要です。この権限を要求しない場合、アプリケーションはディレクトリを作成できません。

解決策

Marshmallow にフォルダーを正常に作成するには、ユーザーに WRITE_EXTERNAL_STORAGE 権限をリクエストする必要があります。これは、次のコードを使用して実現できます。

<code class="java">@Override
protected void onCreate(Bundle savedInstanceState) {
    ...
    if (CheckPermission(MyDevIDS.this, Manifest.permission.WRITE_EXTERNAL_STORAGE)) {
        // 拥有写入权限
        createApplicationFolder();
    } else {
        // 请求运行时权限
        RequestPermission(MyDevIDS.this, Manifest.permission.WRITE_EXTERNAL_STORAGE, REQUEST_RUNTIME_PERMISSION);
    }
}</code>
ログイン後にコピー

CheckPermission と RequestPermission は、アプリケーションに WRITE_EXTERNAL_STORAGE 権限があるかどうかを確認し、まだ付与されていない場合は要求するヘルパー メソッドです。

<code class="java">public static void createApplicationFolder() {
    File f = new File(Environment.getExternalStorageDirectory(), File.separator + Config.VIDEO_COMPRESSOR_APPLICATION_DIR_NAME);
    f.mkdirs();
    ...
}</code>
ログイン後にコピー

これらの変更により、アプリケーションは Marshmallow 以降でフォルダーを確実に作成できるようになります。

以上がAndroid Marshmallow (6.0) でのフォルダー作成の問題を解決する方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!