将Freshdesk集成到Android

时间:2019-07-17 05:49:25

标签: android freshdesk

我正在按照以下链接中提到的步骤将Freshdesk集成到android(Nougat)中:

https://support.freshchat.com/support/solutions/articles/229319-freshchat-android-sdk-integration-steps

我在最新版本的freshdesk的gradle文件中添加了依赖项。 在上面的链接中提到的集成的第一步中,它说我们可能会收到以下错误作为Toa​​st消息

“ 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)”

请帮助。 谢谢。

3 个答案:

答案 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>