Xamarin.Forms更改AndroidManifest.xml导致错误:没有兼容的代码在线程上运行

想在APP中加一个打开摄像头的功能,按照该博主的方法:https://blog.csdn.net/zhenweied09/article/details/82287761

设置好后,再运行就出现上图的错误,于是查找原因,定位到是更改AndroidManifest.xml文件导致的,

需要把android.support.v4.content.FileProvider替换为androidx.core.content.FileProvider即可

XML 复制代码
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="1" android:versionName="1.0" package="com.companyname.robotdemoapp">
    <uses-sdk android:minSdkVersion="21" android:targetSdkVersion="30" />
    <application android:label="RobotDemoApp.Android" android:theme="@style/MainTheme">
      <!-- new add camera root 2023-10-30 https://blog.csdn.net/zhenweied09/article/details/82287761 -->
      <!-- 为什么报:没有兼容的代码在线程上运行?把android.support.v4.content.FileProvider替换为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">
                </meta-data>
      </provider>
    </application>
  
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <!-- new add camera root 2023-10-30 https://blog.csdn.net/zhenweied09/article/details/82287761 -->
    <uses-permission android:name="android.permission.CAMERA" />
    <uses-permission android:name="android.permission.MANAGE_DOCUMENTS" />
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.READ_USER_DICTIONARY" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.WRITE_USER_DICTIONARY" />


  <!--
    如果项目的目标 Android 版本设置为 Android 11 (R API 30) 或更高版本,则必须使用使用 Android 包可见性要求的查询更新 Android 清单。
    在 Platforms/Android/AndroidManifest.xml 文件中,在 节点manifest中添加以下queries/intent节点:
  -->
  <queries>
    <intent>
      <action android:name="android.intent.action.VIEW" />
      <data android:scheme="http"/>
    </intent>
    <intent>
      <action android:name="android.intent.action.VIEW" />
      <data android:scheme="https"/>
    </intent>
  </queries>
  
</manifest>
相关推荐
李少兄10 天前
解决OSS存储桶未创建导致的XML错误
xml·开发语言·python
阳光开朗_大男孩儿10 天前
XML读取和设置例子
xml·java·数据库
悟能不能悟12 天前
在 MyBatis 的xml中,什么时候大于号和小于号可以不用转义
xml·java·mybatis
慌糖12 天前
XML重复查询一条Sql语句??怎么解决
xml·数据库·sql
胖大和尚12 天前
在 XML 节点名称前添加前缀
xml
casual_clover14 天前
Android 中 解析 XML 字符串的几种方式
android·xml
SuperherRo14 天前
Web攻防-XSS跨站&文件类型&功能逻辑&SVG&PDF&SWF&HTML&XML&PMessage&LocalStorage
xml·pdf·html·svg·localstorage·swf·pmessage
'tubug'15 天前
XXE(XML外部实体注入)详解
xml·web安全
不太厉害的程序员19 天前
NC65配置xml找不到Bean
xml·java·后端·eclipse
峥嵘life20 天前
Android xml的Preference设置visibility=“gone“ 无效分析解决
android·xml