FirebaseInstanceId: Token retrieval failed: SERVICE_NOT_AVAILABLE

5 浏览
0 Comments

FirebaseInstanceId: Token retrieval failed: SERVICE_NOT_AVAILABLE

我正在制作一个可以在按钮点击时写入Firebase数据库的应用程序。\n该应用程序在模拟器上运行正常,但在我的物理设备上却无法工作。\n该应用程序上周还正常工作,但今天开始出错。\n以下是主活动的代码:\n

public class MainActivity extends AppCompatActivity {
    private Firebase fled1;
    Button on;
    Button off;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        on=  findViewById(R.id.on);
        off=  findViewById(R.id.off);
        on.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
            DatabaseReference fled1 = FirebaseDatabase.getInstance().getReferenceFromUrl("https://testproject-tb.firebaseio.com/");
            DatabaseReference fled1Child = fled1.child("Button1");     
            fled1Child.setValue("1");
            }
        });
        off.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
            DatabaseReference fled1 = FirebaseDatabase.getInstance().getReferenceFromUrl("https://testproject-tb.firebaseio.com/");
            DatabaseReference fled1Child = fled1.child("Button1"); 
            fled1Child.setValue("0");
            }
        });
    }
}

\n这是我的清单文件,我已添加了所有所需的权限:\n



    
    
        
            
                
                
            
        
    

\n这是构建Gradle文件:\n

apply plugin: 'com.android.application'
android {
    compileSdkVersion 28
    defaultConfig {
        applicationId "com.example.lalitahuja.iotbutton"
        minSdkVersion 15
        targetSdkVersion 28
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}
dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    //noinspection GradleCompatible
    implementation 'com.android.support:appcompat-v7:28.0.0'
    implementation 'com.android.support.constraint:constraint-layout:1.1.3'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
    implementation 'com.google.firebase:firebase-core:16.0.8'
    implementation 'com.google.firebase:firebase-database:16.1.0'
    implementation 'com.crashlytics.sdk.android:crashlytics:2.9.7'
    implementation 'com.google.firebase:firebase-auth:16.2.0'
    implementation 'com.firebase:firebase-client-android:2.5.2'
}
apply plugin: 'com.google.gms.google-services'

\n我收到的错误信息是:\nE/FirebaseInstanceId: Token retrieval failed: SERVICE_NOT_AVAILABLE\n编辑:我尝试了互联网上的解决方案,但没有一个有效。

0
0 Comments

解决 FirebaseInstanceId: Token retrieval failed: SERVICE_NOT_AVAILABLE 问题的方法

当在Android设备上运行应用程序时,如果遇到FirebaseInstanceId: Token retrieval failed: SERVICE_NOT_AVAILABLE错误,可以尝试以下解决方法:

1. 删除现有的应用程序,然后重新在Android设备上运行该应用程序。

这是最简单的解决方法,有时重新安装应用程序可以解决该问题。通过删除并重新安装应用程序,可以重新初始化Firebase服务并重新获取令牌,从而解决SERVICE_NOT_AVAILABLE错误。

希望这些解决方法可以帮助你解决FirebaseInstanceId: Token retrieval failed: SERVICE_NOT_AVAILABLE问题。

0
0 Comments

FirebaseInstanceId: Token retrieval failed: SERVICE_NOT_AVAILABLE这个问题的出现原因是因为Firebase的指纹(fingerprint)发生了变化。解决方法是更新模拟器或者重启设备、检查Google Play服务和Play商店是否启用、检查是否限制了Google Play服务或Play商店在移动数据下的访问权限,如果限制了需要关闭该选项。

0
0 Comments

FirebaseInstanceId: Token retrieval failed: SERVICE_NOT_AVAILABLE这个问题的出现原因是我之前遇到的一个问题,让我来列举一下为什么会出现这个问题以及我是如何解决的。

我之前已经在一个项目中添加了一个应用程序(称为app1)。现在,在对该应用程序进行清理时,我不想删除这个应用程序,所以我在同一个项目中添加了另一个具有不同包名的应用程序(称为newAPP)。

问题是,由于我将旧的google-services.json文件(用于app1)复制到了新的Android应用程序中,所以出现了这个问题。这是一个错误。

一旦我在Firebase控制台中添加了newAPP,并在newAPP的代码库中下载了google-services.json文件,我仍然会收到这个错误。

我之所以出现这个错误,是因为构建文件(由Android Studio自动生成)仍然具有旧的应用程序ID和客户端ID等。

为了解决这个问题,我需要执行以下步骤:

  1. 清理项目(在Build选项卡下)
  2. 重新构建项目(在Build选项卡下)
  3. 重新创建模拟器(使用AVD)

请确保将“app\build\generated\res\google-services\debug\values\values.xml”(由Android Studio构建生成)中的应用程序ID与Firebase控制台上对应的应用程序ID匹配。祝好运!

0