我正在使用Xamarin.Forms开发应用程序。我正在使用Xam.Plugin.Media来访问我的手机相机。根据文档的描述,我应该在资源文件中创建新文件夹,然后在AndroidManifest文件中添加文件提供程序配置。由于某种原因,我遇到了以下错误:
处理清单失败。 找不到资源xml/file_paths(也称为com.companyname.client:xml/file_paths)。 此错误可能是由于AndroidManifest.xml或源代码文件中的Android清单生成属性存在问题引起的。
我花了一些时间尝试找到问题,但没有任何运气。我的清单如下:
处理清单失败。 找不到资源xml/file_paths(也称为com.companyname.client:xml/file_paths)。 此错误可能是由于AndroidManifest.xml或源代码文件中的Android清单生成属性存在问题引起的。
我花了一些时间尝试找到问题,但没有任何运气。我的清单如下:
<?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.client" android:installLocation="auto">
<uses-sdk android:minSdkVersion="21" android:targetSdkVersion="30" />
<application android:label="Client.Android" android:theme="@style/MainTheme" android:icon="@mipmap/icon"></application>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<application android:label="client">
<provider android:name="android.support.v4.content.FileProvider" android:authorities="com.companyname.client.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>
</manifest>
文件是:
<?xml version="1.0" encoding="utf-8"?>
<paths xmlns:android="http://schemas.android.com/apk/res/android">
<external-files-path name="my_images" path="Pictures" />
<external-files-path name="my_movies" path="Movies" />
</paths>
根据解决方案资源管理器中的显示,文件路径确实是Client.Android/Resources/xml/file_paths.xml
androidx.core.content.FileProvider
代替。 - undefined<manifest>
和<application>
元素是必需的。它们每个都只能出现一次。将您的provider
添加到先前的<application>
中,并删除另一个。 - undefined