无法安装,因为提供程序名称com.facebook.app.FacebookContentProviderundefined(在包io.ionic.sxxxx中)已被io.ionic.yyyyy使用]”
这列在一些android清单文件中
<provider
android:name="com.facebook.FacebookContentProvider"
android:authorities="com.facebook.app.FacebookContentProvider"
android:exported="true" />
在构建时,我得到
<provider
android:name="com.facebook.FacebookContentProvider"
android:authorities="com.facebook.app.FacebookContentProviderundefined"
android:exported="true" />
- 注意未定义--我应该在某处定义一些东西吗?有其他解决方案吗?基本上我有两个应用程序,它们不会同时安装在一个设备上,因为输出是相同的。我的理解是未定义应该是我的facebook id。我确实在我的android字符串文件中定义了各种各样的值。几年前我在这里看到了一些答案(Android Facebook content provider authority),但是解决方案不起作用,因为我的android目录中的文件和它们的内容都不一样。任何帮助都将非常感谢!
<string name="title_activity_main">xxxx</string>
<string name="package_name">io.ionic.xxxx</string>
<string name="custom_url_scheme">io.ionic.xxxx</string>
<string name="fb_app_id">xxxxx</string>
<string name="facebook_app_id">xxxxx</string>
<string name="fb_app_name">xxxxx</string>
<string name="fb_login_protocol_scheme">fbxxxxxx</string>
<string name="fb_auto_log_app_events_enabled">true</string>
<string name="fb_advertiser_id_collection_enabled">true</string>
我试过从所有android manifest文件中删除所有标签,但它们是在构建时生成的。我试过在string.xml文件中添加一个名为authority的字符串。我一直在努力找出如何实现这里的解决方案,因为它们与我的ionic项目. Android Facebook content provider authority中的文件不完全一致。
1条答案
按热度按时间kxxlusnw1#
GitHub上有一个关于此的未决问题:https://github.com/cordova-plugin-facebook-connect/cordova-plugin-facebook-connect/issues/100
评论中提供的临时解决方案你试过了吗?
发表评论于2021年12月10日
我发现临时解决方案是添加${applicationId}
修改了平台\安卓\应用\src\main\安卓清单. xml,找到一个节点123456789”安卓:导出=“true”安卓:名称=“com.facebook. Facebook内容提供商”/〉
或
在插件文件夹plugins\cordova-plugin-facebook-connect\plugin.xml中进行更改,找到行〈provider android:authorities=“com.facebook.app. Facebook内容提供商${applicationId}$APP_ID”
以及
apren在4月24日评论说:
另一个临时解决方案:
设置任何应用程序ID,例如应用程序ID =“应用程序包名称”初始化应用程序后使用代码facebookConnectPlugin.setApplicationId('your_facebook_app_id')