在进行安卓开发调用摄像头的时候,跟着b站视频的up主学习,在构建代码的时候fileprovider函数依旧出现问题不知道是哪里写漏了或是写错了,请各位帮忙看看
这是mainactivity文件的代码
这是Androidmanifest文件
这是在res目录下新建的xml目录里的provider_paths.xml文件
在进行安卓开发调用摄像头的时候,跟着b站视频的up主学习,在构建代码的时候fileprovider函数依旧出现问题不知道是哪里写漏了或是写错了,请各位帮忙看看
这是mainactivity文件的代码
这是Androidmanifest文件
卧式纯绿 上午好☀️☀️☀️️
本答案参考ChatGPT-3.5
从你提供的代码中可以看出,你在AndroidManifest.xml文件中配置的FileProvider存在语法错误。下面是你的代码段:
<provider android:authorities="Sfannlicationidl fileprovider" android:name androidx.core.content.FileProvider" android:exported="false" android:grantUriPermissions="true>
<meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="0xml/provider_paths"/>
</provider>
有几个错误需要进行修正:
<provider>
标签中的android:name
属性的值缺少了双引号的开头和结尾。android:authorities
属性的值应该是一个合法的内容提供器的授权路径,而不是乱填的字符串。android:exported
属性和android:grantUriPermissions
属性的值缺少了双引号的开头和结尾。<meta-data>
标签的属性值android.support.FILE_PROVIDER_PATHS
是过时的,正确的属性值应该是android.support.FILE_PROVIDER_PATHS
。下面是修正后的代码段:
<provider android:authorities="你的应用包名.fileprovider" android:name="androidx.core.content.FileProvider" android:exported="false" android:grantUriPermissions="true">
<meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/provider_paths"/>
</provider>
你还需要确保替换android:authorities
属性中的"你的应用包名"为你实际的应用包名。此外,在<meta-data>
标签中,android:resource
属性的值应该使用资源符号@
来引用provider_paths.xml
文件。
在修正上述问题之后,重新运行你的应用程序,看看是否解决了问题。如果还有其他问题,请提供具体的错误信息和相关代码段,以便我们进一步帮助你解决问题。