步骤来复制我做什么:火力地堡和Android工作室,无法让过去:W/SyncTree:听在/消息失败:DatabaseError:权限被拒绝
步骤1)新项目实例名称:融为一体。 myapp.test
步骤2)火力控制台上新的Android应用程序,名称:com.myapp.test(就像在清单)
步骤3)下载谷歌,services.json和地点它在我的项目的'app'文件夹中
步骤4)添加下列行:
的build.gradle - 项目级别
classpath 'com.google.gms:google-services:3.0.0'
的build.gradle - 应用级(在底部文件)
apply plugin: 'com.google.gms.google-services'
我也借此机会增加一对夫妇从火力地堡依赖我要去使用,如:
compile 'com.google.firebase:firebase-core:9.6.1'
compile 'com.google.firebase:firebase-database:9.6.1'
compile 'com.google.android.gms:play-services:9.6.1'
步骤5)主要活动(上创建)
FirebaseDatabase database = FirebaseDatabase.getInstance();
DatabaseReference myRef = database.getReference("message");
myRef.setValue("Hello, World!");
步骤6)运行它,并得到如下:
W/SyncTree: Listen at /message failed: DatabaseError: Permission denied
W/MainActivity: Failed to read value.
com.google.firebase.database.DatabaseException: Firebase Database error: Permission denied
at com.google.firebase.database.DatabaseError.toException(Unknown Source)
at com.myapp.test.MainActivity$1.onCancelled(MainActivity.java:50)
at com.google.android.gms.internal.zzajp.zza(Unknown Source)
at com.google.android.gms.internal.zzakn.zzcxi(Unknown Source)
at com.google.android.gms.internal.zzaks$1.run(Unknown Source)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:5417)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
我试过从头开始至少5次,不同的名字和所有。甚至添加指纹。但是,不管我做什么,我都不能动摇这个错误。
我可以通过转到控制台上的“权限”选项卡并将“auth!= null”更改为true来使其工作。但是这是一个绷带,我需要一个永久的解决方案。
我的双手有点束缚在这里,跑出来试试。我做得到,可能会或可能不会有事情做上述错误以下消息:
I/InstantRun: Instant Run Runtime started. Android package is com.myapp.test, real application class is null.
而且也:
W/DynamiteLoaderImpl: Failed to load module version: module com.google.android.gms.flags not found
谢谢,我没有看到其他方式。在网页浏览器中使用JavaScript很好,而不必这样做,这就是我混淆的原因。 – Rosenberg