我正在按照以下链接中提到的步骤将Freshdesk集成到android(Nougat)中:
我在最新版本的freshdesk的gradle文件中添加了依赖项。 在上面的链接中提到的集成的第一步中,它说我们可能会收到以下错误作为Toast消息
“ Freshchat缺少/错误的FileProvider。在运行Nougat或更高版本的OS的设备中,相机捕获将失败(错误代码354)”
为避免该错误,我在AndroidManifest.xml文件和“ freshchat_file_provider_authority”的字符串资源中添加了以下代码。 字符串资源“ freshchat_file_provider_authority”和AndroidManifest.xml文件中的授权机构具有相同的程序包名称。
<provider
android:name="android.support.v4.content.FileProvider"
android:authorities="com.mypackage.provider"
android:exported="false"
android:grantUriPermissions="true">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/freshchat_file_provider_paths" />
</provider>
<string name="freshchat_file_provider_authority">com.mypackage.provider</string>
但是我仍然遇到相同的错误:“ Freshchat缺少/错误的FileProvider。在运行Nougat或更高版本的OS的设备中,相机捕获将失败(错误代码354)”
请帮助。 谢谢。
答案 0 :(得分:1)
您只需要在values / strings.xml文件中添加以下行:
<string name="freshchat_file_provider_authority">com.mypackage.provider</string>
就是这样。
答案 1 :(得分:0)
尝试将android:name =“ android.support.v4.content.FileProvider”更改为android:name =“ androidx.core.content.FileProvider”
答案 2 :(得分:0)
AndroidManifest.xml
<provider
android:name="androidx.core.content.FileProvider"
android:authorities="com.mypackage.provider"
android:exported="false"
android:grantUriPermissions="true">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/freshchat_file_provider_paths" />
</provider>
values / strings.xml
<string name="freshchat_file_provider_authority">com.mypackage.provider</string>