有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java Android facebooksdk土耳其语崩溃

当我选择Turkish language时,我得到一个错误
在其他语言中没有问题,如果我删除facebook sdk,请修复它。但我必须使用facebook sdk

java.lang.IllegalArgumentException: CLİCK is not a constant in com.facebook.appevents.codeless.internal.EventBinding$ActionType

repositories {
maven { url 'https://maven.fabric.io/public' }
mavenCentral()}

implementation 'com.facebook.安卓:facebook-安卓-sdk:[4,5)'

清单

<meta-data 安卓:name="com.facebook.sdk.ApplicationId" 安卓:value="@string/facebook_app_id"/>

注意:İletter从facebook返回,它是由运行时创建的。我没有写任何信。请不要用小写字母回复。我已经知道了


共 (2) 个答案

  1. # 1 楼答案

    我对facebook sdk一无所知,但我在单词CLİCK的大写字母I上看到一个点,在土耳其语言环境中,toUppercase("i")不返回"I",而是"İ"。所以我打赌,在某个地方,小写的"click"会使用toUpperCase()转换为"CLİCK",而不指定合理的区域设置,例如Locale.ROOT

    由于这是土耳其语案例转换的一个非常特殊的“特征”(据我所知,没有其他语言),这就解释了为什么这只发生在土耳其语中

    也许在facebook skd上有更多知识的人可以告诉你案例转换发生的地方以及如何修复

  2. # 2 楼答案

    我遇到了同样的问题。 解决方法是使用4.33.0及更低版本

    implementation 'com.facebook.android:facebook-android-sdk:4.33.0'
    

    更新(12.06.20) 最新的Facebook SDK(5.15.3)没有崩溃