web-dev-qa-db-ja.com

android.support.v4.content.FileProviderが見つかりません

Android API 26をサポートするために動作する古いアプリをアップグレードしようとしています。使用する必要があるものの1つはAndroid.support.v4.content.FileProviderです-しかし、見つかりませんでした。

    <provider
        Android:name="Android.support.v4.content.FileProvider"
        Android:authorities="${applicationId}.fileprovider"
        Android:exported="false"
        Android:grantUriPermissions="true">
        <meta-data
            Android:name="Android.support.FILE_PROVIDER_PATHS"
            Android:resource="@xml/file_paths" />
    </provider>

初期のAndroidビルドのため、gradleファイルは単純に見えます。依存関係を追加するのと同じくらい簡単ですか?周りを見て、理解できないmultidexを追加することを提案しました。感謝します!

Android {
    compileSdkVersion 26
    buildToolsVersion '26.0.2'

    defaultConfig {
        applicationId "virtualgs.spaint"
        minSdkVersion 22
        targetSdkVersion 26
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.txt'
        }
    }
}
15
Lim Thye Chean

追加 compile 'com.Android.support:support-v4:26.1.0' to build.gradle appモジュールのファイル。

4
Will Tang

AndroidX(再パッケージ化されたAndroidサポートライブラリ)では、パスはandroidx.core.content.FileProviderしたがって、更新されたプロバイダータグは次のようになります。

<provider
    Android:name="androidx.core.content.FileProvider"
    Android:authorities="${applicationId}.fileprovider"
    Android:exported="false"
    Android:grantUriPermissions="true">
    <meta-data
        Android:name="Android.support.FILE_PROVIDER_PATHS"
        Android:resource="@xml/file_paths" />
</provider>

Androidサポートライブラリはandroidx.*パッケージ階層。

Android.*は、組み込みのAndroidシステムライブラリに予約されています。

65
Andre

クラスを作成する

import Android.support.v4.content.FileProvider;

public class GenericFileProvider extends FileProvider {
}

このプロバイダーをアプリケーションタグの下のAndroidManifest.xmlに追加します。

<provider
      Android:name=".utilities.GenericFileProvider"
      Android:authorities="${applicationId}.utilities.GenericFileProvider"
      Android:exported="false"
      Android:grantUriPermissions="true">
         <meta-data
             Android:name="Android.support.FILE_PROVIDER_PATHS"
             Android:resource="@xml/provider_paths" />
</provider>
1
Pavya

私はそれを新しいバージョンに置き換えました:androidx.core.content.FileProvider

これは私のために働いた。

0
Hashim Akhtar