Facebook провайдер не настроен. Обязательно добавьте строку «facebook_application_id» - PullRequest
0 голосов
/ 08 апреля 2020

Я пытаюсь выполнить аутентификацию на основе firebase с пользовательским интерфейсом перед сборкой. Я выполняю все шаги, но получаю следующую ошибку

E / AndroidRuntime: FATAL EXCEPTION: main Процесс: com.example.dhingana, PID: 23811 java .lang.RuntimeException: невозможно запустить действие ComponentInfo {com.example.projectname / com.example.dhingana.MainActivity}: java .lang.IllegalStateException: поставщик Facebook не настроен. Обязательно добавьте строку facebook_application_id. См. Документы для получения дополнительной информации:

<resources>
    <string name="app_name">Name</string>
    <string name="facebook_app_id" translatable="false">id</string>
    <string name="fb_login_protocol_scheme" translatable="false">fbid</string>
</resources>

Это строка. xml file

    <application
            android:allowBackup="true"
            android:icon="@mipmap/ic_launcher"
            android:label="@string/app_name"
            android:roundIcon="@mipmap/ic_launcher_round"
            android:supportsRtl="true"
            android:theme="@style/AppTheme">
        <activity android:name=".MainActivity">


            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>

                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>

        </activity>
        <meta-data android:name="com.facebook.sdk.ApplicationId" tools:replace="android:value" android:value="@string/facebook_app_id"/>


        <activity android:name="com.facebook.FacebookActivity"
                  android:configChanges=
                          "keyboard|keyboardHidden|screenLayout|screenSize|orientation"
                  android:label="@string/app_name" />
        <activity android:name="com.facebook.CustomTabActivity" android:exported="true">
            <intent-filter>
                <action android:name="android.intent.action.VIEW" />
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.BROWSABLE" />
                <data android:scheme="@string/fb_login_protocol_scheme" />
            </intent-filter>
        </activity>
        <provider android:authorities="com.facebook.app.FacebookContentProvider230*******08"
                  android:name="com.facebook.FacebookContentProvider"
                  android:exported="true" />

    </application>

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

Я пробовал очень много вещей на inte rnet, но они не работают. Если я удаляю опцию facebook из списка провайдеров, все работает нормально только при добавлении фейсбука, эта ошибка происходит

Ответы [ 2 ]

0 голосов
/ 08 апреля 2020

Удалите этот тег из тега активности и запишите его после завершения тега активности

<meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/facebook_app_id"/>
0 голосов
/ 08 апреля 2020

Я думаю, что тег <meta-data>...</meta-data> не должен быть вложен в <activity/>. Это может привести к ошибке. Кроме того, я считаю, CustomTabActivity должно выглядеть следующим образом

<activity android:name="com.facebook.CustomTabActivity" android:exported="true">
<intent-filter>
    <action android:name="android.intent.action.VIEW" /> 
    <category android:name="android.intent.category.DEFAULT" /> 
    <category android:name="android.intent.category.BROWSABLE" />
    <data android:scheme="@string/fb_login_protocol_scheme" />
</intent-filter> 
</activity>

И строка fb_login_protocol_scheme имеет значение <string name="facebook_login_protocol_scheme" translatable="false">fbYOUR_APP_ID</string>

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...