Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/182.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
OneSignal Android Studio获取FCM令牌时发生未知错误_Android_Onesignal - Fatal编程技术网

OneSignal Android Studio获取FCM令牌时发生未知错误

OneSignal Android Studio获取FCM令牌时发生未知错误,android,onesignal,Android,Onesignal,我有个问题。 我不能用一个信号。我不知道为什么。我用谷歌搜索错误,但没有任何帮助 目前我在版本4.2上使用Android Studio 最新的OneSignal版本:4.3.4 也是最新的Firebase版本。我创建了一个新的Firebase项目和OneSignal项目 这就是错误: 2021-05-25 13:06:37.370 3225-4181/de.kggaming.application E/OneSignal: Unknown error getting FCM Token

我有个问题。 我不能用一个信号。我不知道为什么。我用谷歌搜索错误,但没有任何帮助

目前我在版本4.2上使用Android Studio 最新的OneSignal版本:4.3.4 也是最新的Firebase版本。我创建了一个新的Firebase项目和OneSignal项目

这就是错误:

2021-05-25 13:06:37.370 3225-4181/de.kggaming.application E/OneSignal: Unknown error getting FCM Token
    java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/firebase/iid/FirebaseInstanceId;
        at com.onesignal.PushRegistratorFCM.getToken(PushRegistratorFCM.java:60)
        at com.onesignal.PushRegistratorAbstractGoogle.attemptRegistration(PushRegistratorAbstractGoogle.java:97)
        at com.onesignal.PushRegistratorAbstractGoogle.access$100(PushRegistratorAbstractGoogle.java:37)
        at com.onesignal.PushRegistratorAbstractGoogle$1.run(PushRegistratorAbstractGoogle.java:84)
        at java.lang.Thread.run(Thread.java:923)
     Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.firebase.iid.FirebaseInstanceId" on path: DexPathList[[dex file "/data/data/de.kggaming.application/code_cache/.overlay/base.apk/classes3.dex", zip file "/data/app/~~37wP-zifceloViDoIaZiLQ==/de.kggaming.application-MT0rnPML9HHvlPgijekxXw==/base.apk"],nativeLibraryDirectories=[/data/app/~~37wP-zifceloViDoIaZiLQ==/de.kggaming.application-MT0rnPML9HHvlPgijekxXw==/lib/arm64, /system/lib64]]
        at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:207)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
        at com.onesignal.PushRegistratorFCM.getToken(PushRegistratorFCM.java:60) 
        at com.onesignal.PushRegistratorAbstractGoogle.attemptRegistration(PushRegistratorAbstractGoogle.java:97) 
        at com.onesignal.PushRegistratorAbstractGoogle.access$100(PushRegistratorAbstractGoogle.java:37) 
        at com.onesignal.PushRegistratorAbstractGoogle$1.run(PushRegistratorAbstractGoogle.java:84) 
        at java.lang.Thread.run(Thread.java:923) 
这是我的build.gradle(项目):

这是我的应用程序build.gradle:

plugins {
    id 'com.onesignal.androidsdk.onesignal-gradle-plugin'
    id 'com.android.application'
    id 'com.google.gms.google-services'

}

android {
    compileSdkVersion 30

    defaultConfig {
        applicationId "de.kggaming.application"
        minSdkVersion 26
        targetSdkVersion 30
        versionCode 1
        versionName "1.0"

        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
}

dependencies {

    implementation 'androidx.appcompat:appcompat:1.3.0'
    implementation 'com.google.android.material:material:1.3.0'
    implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
    implementation 'com.google.firebase:firebase-messaging:22.0.0'
    testImplementation 'junit:junit:4.+'
    androidTestImplementation 'androidx.test.ext:junit:1.1.2'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'
    implementation platform('com.google.firebase:firebase-bom:28.0.1')
    implementation 'com.google.firebase:firebase-analytics'
    implementation 'com.onesignal:OneSignal:[4.0.0, 4.99.99]'
}
下面是应用程序类:

package de.kggaming.application;

import android.app.Application;

import com.onesignal.OneSignal;

public class ApplicationClass extends Application {
    private static final String ONESIGNAL_APP_ID = "XXXXXXXXXXXXXXXXXXXXXXXX";
    @Override
    public void onCreate() {
        super.onCreate();
        OneSignal.setLogLevel(OneSignal.LOG_LEVEL.DEBUG, OneSignal.LOG_LEVEL.DEBUG);

        // OneSignal Initialization
        OneSignal.initWithContext(this);
        OneSignal.setAppId(ONESIGNAL_APP_ID);
    }
}

该应用程序没有任何功能。只是一个空的活动和这个onesignal实现

你能帮我把这东西弄好吗

谢谢大家!

致以最良好的祝愿


Gismo

类com.google.firebase.iid.FirebaseInstanceId已被弃用,并已从aar的最新版本中删除:

com.google.firebase.firebase-iid

项目中的OneSignal版本要求aar文件的版本为20.x.x,该文件仍然具有该类。但是,如果您包含该aar文件的v20.x.x,您将在使用的firebase messaging:22.0.0库中开始出现重复的类错误


因此,我能提出的唯一解决方案是将您正在使用的OneSignal SDK更新为最新版本。

解决方案失败:Lcom/google/firebase/iid/FirebaseInstanceId

在尝试初始化依赖于firebase SDK的
hypertrack\u插件时,我在颤振项目中遇到了类似的问题

经过两天的搜索,在
android/app/build.gradle

希望这个解决方案也能解决你的问题

dependencies {
  implementation "com.google.firebase:firebase-iid"
}

从中找到解决方案

感谢您的回答!对不起,我迟了答复。我试图更新一个信号。可能他们没有更新sdk。。“我现在在没有onesignal的情况下构建应用程序。@LeonBrenn你能用我发布到你的Que上的信息尝试一下答案吗?”检查这是否对你有效。谢谢你的回答!这对我很管用。现在我可以用onesignal构建我的应用程序:)@LeonBrenn很酷,如果我的答案有效,你可以接受。希望它被接受now@LeonBrenn是的!快乐,谢谢。这个答案救了我!
dependencies {
  implementation "com.google.firebase:firebase-iid"
}