2017-06-30 8 views
0

私のアプリケーションに2つのファイルプロバイダを使用する必要があります。FileProviderの拡張エラー

私はクイックフィックスはこの回答で提案しようとしている:

https://stackoverflow.com/a/42989182/7952427

しかし、アプリがクラッシュします。

私は、2番目のプロバイダがこの例外/クラッシュを引き起こしていることを知っています。なぜなら、私がそれを削除すると、アプリケーションはもはやクラッシュしないからです。マニフェストに

<provider 
    android:name="android.support.v4.content.FileProvider" 
     android:authorities="com.example.android.fileproviderTestLyb" 
     android:exported="false" 
     android:grantUriPermissions="true"> 
     <meta-data 
      android:name="android.support.FILE_PROVIDER_PATHS" 
      android:resource="@xml/file_paths"> 
     </meta-data> 
    </provider> 
    <provider 
     android:name=".MyFileProvider" 
     android:authorities="com.example.android.fileprovider2" 
     android:exported="false" 
     android:grantUriPermissions="true"> 
     <meta-data 
      android:name="android.support.FILE_PROVIDER_PATHS_video" 
      android:resource="@xml/video_path"> 
     </meta-data> 
    </provider> 

ファイルProviderクラス:

import android.support.v4.content.FileProvider; 
public class MyFileProvider extends FileProvider{ 
} 

誰も私が理由を理解するのに役立つことはできますか? MyFileProviderクラスに何かを追加する必要がありますか?

+0

"この例外が発生しています" - あなたのプロセスから来ていると確信していますか?LogCatに表示されている他のアプリからのスタックトレースではありませんか? 'FileProvider'はウィンドウとは関係ありません。 – CommonsWare

+0

はい、そうです。私はAndroidには新しく、申し訳ありません:/私は自分の質問を編集しました。 –

+0

あなたのアプリがクラッシュしている場合、そのクラッシュのスタックトレースがLogCatにあります。それは起こっていることに関連するプロセスから1つだけでなければなりません – CommonsWare

答えて

0

置き換えます

android.support.FILE_PROVIDER_PATHS_video 

をして:あなたはandroid.support.FILE_PROVIDER_PATHS<meta-data>要素を提供していない場合

android.support.FILE_PROVIDER_PATHS 

FileProviderは間違いなくクラッシュします。

+0

ありがとう!それはうまくいった!私はあなたの答えを受け入れたが、私は15未満の評判を持っているので、それは表示されません。 –