Tag <provider> attribute authorities has invalid character '{' in AndroidManifest.xml using Facebook ShareLink

Shakawat Hossain picture Shakawat Hossain · Apr 15, 2015 · Viewed 8.3k times · Source

Though I delete the "{}" braces but it still occurs.

<provider
        android:name="com.facebook.FacebookContentProvider" android:authorities="com.facebook.app.FacebookContentProvider{facebook_app_id}"
        android:exported="true" />

Answer

Menelaos Kotsollaris picture Menelaos Kotsollaris · May 1, 2015

The format shoud be: android:authorities="com.facebook.app.FacebookContentProvider0123456789" , where 012345678 is your Facebook app ID. Use it without the { character. So your provider tag should be:

<provider
android:authorities="com.facebook.app.FacebookContentProvider0123456789"
android:name="com.facebook.FacebookContentProvider"
android:exported="true"/>

However, if you accidently have already used the { character, then you will be most likely facing an Android Studio bug as it is reported here. The problem is that you are trying to edit the wrong manifest. The poped up manifest from Android Studio build message is not the application's manifest.

So simply open your application's manifest and you can edit it without problem.