Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/205.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 权限拒绝:;不导出广播意图_Android - Fatal编程技术网

Android 权限拒绝:;不导出广播意图

Android 权限拒绝:;不导出广播意图,android,Android,我有以下代码: sendBroadcast(新意图(意图、行动、媒体), parse(“文件:/”+Environment.getExternalStorageDirectory().getAbsolutePath()); 在我的清单中,我补充道: <intent-filter> <action android:name="android.intent.action.MAIN"/> <categ

我有以下代码:

sendBroadcast(新意图(意图、行动、媒体),
parse(“文件:/”+Environment.getExternalStorageDirectory().getAbsolutePath());
在我的清单中,我补充道:

           <intent-filter>
            <action android:name="android.intent.action.MAIN"/>
            <category android:name="android.intent.category.LAUNCHER"/>
            <action android:name="android.intent.ACTION_MEDIA_MOUNTED"/>
            <action android:name="android.intent.action.MEDIA_EJECT" />
            <action android:name="android.intent.ACTION_MEDIA_SCANNER_SCAN_FILE"/>
            <data android:scheme="file"/>
        </intent-filter>
    </activity>
</application>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
我不知道为什么会是否认。我怎样才能解决它

如果你知道,请帮助我,并请写得更详细。我只是个初学者

非常感谢

添加

<uses-permission android:name="android.permission.ACCESS_DOWNLOAD_MANAGER"/>


另一个注意事项:写入外部存储隐式具有读取外部存储权限。

实现广播接收器并将其定义添加到清单文件:

<application
    android:icon="@drawable/icon"
    android:label="@string/app_name" >
    <!--...-->

    <receiver
        android:name=".CustomReceiver"
        android:exported="true" >
    </receiver>
</application>


其中CustomReceiver扩展了BroadcastReceiver。

使用MediaScannerConnection而不是SendBroadcast

conn = new MediaScannerConnection( * * your context * * ,
     new MediaScannerConnection.MediaScannerConnectionClient() {@
         Override
         public void onScanCompleted(String path, Uri uri) {

             if (path.equals( * * your filename * * .getAbsolutePath())) {
                 Log.i("Scan Status", "Completed");
                 Log.i("uri: ", uri.toString());

                 conn.disconnect();
             }
         }@
         Override
         public void onMediaScannerConnected() {
             // TODO Auto-generated method stub
             conn.scanFile( * * your file name * * .getAbsolutePath(), null);

         }
     });
 conn.connect();

您是如何解决此问题的?您在CustomReceiver中添加了什么?
conn = new MediaScannerConnection( * * your context * * ,
     new MediaScannerConnection.MediaScannerConnectionClient() {@
         Override
         public void onScanCompleted(String path, Uri uri) {

             if (path.equals( * * your filename * * .getAbsolutePath())) {
                 Log.i("Scan Status", "Completed");
                 Log.i("uri: ", uri.toString());

                 conn.disconnect();
             }
         }@
         Override
         public void onMediaScannerConnected() {
             // TODO Auto-generated method stub
             conn.scanFile( * * your file name * * .getAbsolutePath(), null);

         }
     });
 conn.connect();