- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我似乎无法理解为什么我不能写入我的数据库。在我看来,有一些我无法解决的连接问题,因为我确实遵循了几个关于这个问题的教程,但没有一个成功。
这是我检查过几次的几个关键点,但我想我还遗漏了其他东西......
这是我只有一个 child 的 Firebase 实时数据库:
{
"message" : "nil"
}
这是我的 Firebase 实时数据库规则:
{
"rules": {
".read": true,
".write": true
}
}
这是我的项目 Gradle 依赖项:
...
dependencies {
classpath 'com.android.tools.build:gradle:3.4.2'
classpath 'com.google.gms:google-services:4.2.0'
}
...
这是我的模块 Gradle 依赖项:
...
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'androidx.appcompat:appcompat:1.0.2'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
implementation 'com.google.firebase:firebase-core:17.0.0'
implementation 'com.google.firebase:firebase-database:18.0.0'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test:runner:1.2.0'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
implementation 'com.google.android.material:material:1.0.0'
}
apply plugin: 'com.google.gms.google-services'
...
我在我的 Android.Manifest.xml 中添加了 INTERNET 权限
...
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
...
还有我来自 MainActivity.java 的实际代码
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
public DatabaseReference myRootRef = FirebaseDatabase.getInstance().getReference();
public DatabaseReference cinemasRef = myRootRef.child("message");
@Override
protected void onCreate(Bundle savedInstanceState) {
Toolbar toolbar;
ActionBarDrawerToggle toggle;
cinemasRef.setValue("I logged");
...
}
}
我希望每当我启动应用程序时,因为我将 setValue 放在 onCreate() 方法中,所以我尊重的数据库/子项中的值(例如“nil”)将被“我登录”覆盖。 一些指示或想法将不胜感激,因为我已经坚持了几周,现在一遍又一遍地阅读帖子/教程/关键点。谢谢!
编辑 #1 这是我的 Logcat
2019-08-09 16:48:30.840 9474-9474/? D/libEGL: Emulator has host GPU support, qemu.gles is set to 1.
2019-08-09 16:48:30.847 9474-9474/? D/libEGL: loaded /vendor/lib/egl/libEGL_emulation.so
2019-08-09 16:48:30.849 9474-9474/? D/libEGL: loaded /vendor/lib/egl/libGLESv1_CM_emulation.so
2019-08-09 16:48:30.851 9474-9474/? D/libEGL: loaded /vendor/lib/egl/libGLESv2_emulation.so
2019-08-09 16:53:12.302 9474-9474/? I/example.scratc: Not late-enabling -Xcheck:jni (already on)
2019-08-09 16:53:12.336 9474-9474/? E/example.scratc: Unknown bits set in runtime_flags: 0x8000
2019-08-09 16:53:12.337 9474-9474/? W/example.scratc: Unexpected CPU variant for X86 using defaults: x86
2019-08-09 16:53:13.019 9474-9474/com.example.scratch W/example.scratc: JIT profile information will not be recorded: profile file does not exits.
2019-08-09 16:53:13.022 9474-9474/com.example.scratch I/chatty: uid=10135(com.example.scratch) identical 10 lines
2019-08-09 16:53:13.022 9474-9474/com.example.scratch W/example.scratc: JIT profile information will not be recorded: profile file does not exits.
2019-08-09 16:53:13.435 9474-9474/com.example.scratch V/FA: Registered activity lifecycle callback
2019-08-09 16:53:13.495 9474-9474/com.example.scratch I/FirebaseInitProvider: FirebaseApp initialization successful
2019-08-09 16:53:13.499 9474-9474/com.example.scratch I/InstantRun: starting instant run server: is main process
2019-08-09 16:53:13.691 9474-9474/com.example.scratch D/DEBUG: THIS IS ONCREATE ????????????????????????????????????
2019-08-09 16:53:13.693 9474-10282/com.example.scratch V/FA: Collection enabled
2019-08-09 16:53:13.693 9474-10282/com.example.scratch V/FA: App package, google app id: com.example.scratch, 1:801495270237:android:57be8c2d1041efb4
2019-08-09 16:53:13.701 9474-10282/com.example.scratch I/FA: App measurement is starting up, version: 16250
2019-08-09 16:53:13.701 9474-10282/com.example.scratch I/FA: To enable debug logging run: adb shell setprop log.tag.FA VERBOSE
2019-08-09 16:53:13.701 9474-10282/com.example.scratch I/FA: To enable faster debug mode event logging run:
adb shell setprop debug.firebase.analytics.app com.example.scratch
2019-08-09 16:53:13.702 9474-10282/com.example.scratch D/FA: Debug-level message logging enabled
2019-08-09 16:53:13.731 9474-9474/com.example.scratch V/FA: onActivityCreated
2019-08-09 16:53:13.776 9474-9474/com.example.scratch W/example.scratc: Accessing hidden method Landroid/view/View;->computeFitSystemWindows(Landroid/graphics/Rect;Landroid/graphics/Rect;)Z (greylist, reflection, allowed)
2019-08-09 16:53:13.777 9474-9474/com.example.scratch W/example.scratc: Accessing hidden method Landroid/view/ViewGroup;->makeOptionalFitsSystemWindows()V (greylist, reflection, allowed)
2019-08-09 16:53:13.784 9474-10289/com.example.scratch D/NetworkSecurityConfig: No Network Security Config specified, using platform default
2019-08-09 16:53:13.925 9474-10282/com.example.scratch V/FA: Connecting to remote service
2019-08-09 16:53:13.993 9474-9474/com.example.scratch W/example.scratc: Accessing hidden method Landroid/widget/AutoCompleteTextView;->doBeforeTextChanged()V (greylist-max-p, reflection, denied)
2019-08-09 16:53:13.993 9474-9474/com.example.scratch W/example.scratc: Accessing hidden method Landroid/widget/AutoCompleteTextView;->doAfterTextChanged()V (greylist-max-p, reflection, denied)
2019-08-09 16:53:13.994 9474-9474/com.example.scratch W/example.scratc: Accessing hidden method Landroid/widget/AutoCompleteTextView;->ensureImeVisible(Z)V (greylist-max-p, reflection, denied)
2019-08-09 16:53:14.006 9474-10282/com.example.scratch V/FA: Connection attempt already in progress
2019-08-09 16:53:14.211 9474-10282/com.example.scratch I/FA: Tag Manager is not found and thus will not be used
2019-08-09 16:53:14.219 9474-10282/com.example.scratch D/FA: Logging event (FE): screen_view(_vs), Bundle[{firebase_event_origin(_o)=auto, firebase_screen_class(_sc)=MainActivity, firebase_screen_id(_si)=5326573072556222733}]
2019-08-09 16:53:14.271 9474-10282/com.example.scratch V/FA: Connection attempt already in progress
2019-08-09 16:53:14.271 9474-10282/com.example.scratch V/FA: Connection attempt already in progress
2019-08-09 16:53:14.277 9474-10282/com.example.scratch V/FA: Activity resumed, time: 50397964
2019-08-09 16:53:14.334 9474-10286/com.example.scratch D/OpenGLRenderer: Swap behavior 1
2019-08-09 16:53:14.336 9474-10286/com.example.scratch W/OpenGLRenderer: Failed to choose config with EGL_SWAP_BEHAVIOR_PRESERVED, retrying without...
2019-08-09 16:53:14.336 9474-10286/com.example.scratch D/OpenGLRenderer: Swap behavior 0
2019-08-09 16:53:14.347 9474-10286/com.example.scratch D/eglCodecCommon: setVertexArrayObject: set vao to 0 (0) 0 0
2019-08-09 16:53:14.347 9474-10286/com.example.scratch D/EGL_emulation: eglCreateContext: 0xe39e4880: maj 3 min 0 rcv 3
2019-08-09 16:53:14.375 9474-10286/com.example.scratch D/EGL_emulation: eglMakeCurrent: 0xe39e4880: ver 3 0 (tinfo 0xd81e8170)
2019-08-09 16:53:14.525 9474-10286/com.example.scratch W/Gralloc3: mapper 3.x is not supported
2019-08-09 16:53:14.600 9474-10286/com.example.scratch D/OpenGLRenderer: Setting buffer count to 3, min_undequeued 1, extraBuffers 0
2019-08-09 16:53:14.674 9474-10286/com.example.scratch D/EGL_emulation: eglMakeCurrent: 0xe39e4880: ver 3 0 (tinfo 0xd81e8170)
2019-08-09 16:53:14.683 9474-10286/com.example.scratch D/eglCodecCommon: setVertexArrayObject: set vao to 0 (0) 1 0
2019-08-09 16:53:14.866 9474-9474/com.example.scratch D/DEBUG: THIS IS ONCREATEOPTIONMENU!!!!!!!!!!!!!!!!!!!!!!!!!!!!
2019-08-09 16:53:14.875 9474-9474/com.example.scratch I/Choreographer: Skipped 38 frames! The application may be doing too much work on its main thread.
2019-08-09 16:53:14.900 9474-10282/com.example.scratch D/FA: Connected to remote service
2019-08-09 16:53:14.902 9474-10282/com.example.scratch V/FA: Processing queued up service tasks: 4
2019-08-09
最佳答案
尝试这样做:
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
public DatabaseReference myRootRef, cinemasRef;
@Override
protected void onCreate(Bundle savedInstanceState) {
Toolbar toolbar;
ActionBarDrawerToggle toggle;
// Moving the initialisation in function
myRootRef = FirebaseDatabase.getInstance().getReference();
cinemasRef = myRootRef.child("message");
cinemasRef.setValue("I logged");
...
}
}
Codelab 示例:https://codelabs.developers.google.com/codelabs/firebase-android/#1
关于android - 无法写入我的 firebase 实时数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57430295/
我的问题是如何在 python 中创建一个简单的数据库。我的例子是: User = { 'Name' : {'Firstname', 'Lastname'}, 'Address' : {'Street
我需要创建一个与远程数据库链接的应用程序! mysql 是最好的解决方案吗? Sqlite 是唯一的本地解决方案吗? 我使用下面的方法,我想知道它是否是最好的方法! NSString *evento
给定两台 MySQL 服务器,一台本地,一台远程。两者都有一个包含表 bohica 的数据库 foobar。本地服务器定义了用户 'myadmin'@'%' 和 'myadmin'@'localhos
我有以下灵活的搜索查询 Select {vt:code},{vt:productcode},{vw:code},{vw:productcode} from {abcd AS vt JOIN wxyz
好吧,我的电脑开始运行有点缓慢,所以我重置了 Windows,保留了我的文件。因为我的大脑还没有打开,所以我忘记事先备份我的 MySQL 数据库。我仍然拥有所有原始文件,因此我实际上仍然拥有数据库,但
如何将我的 Access 数据库 (.accdb) 转换为 SQLite 数据库 (.sqlite)? 请,任何帮助将不胜感激。 最佳答案 1)如果要转换 db 的结构,则应使用任何 DB 建模工具:
系统检查发现了一些问题: 警告:?:(mysql.W002)未为数据库连接“默认”设置 MySQL 严格模式 提示:MySQL 的严格模式通过将警告升级为错误来修复 MySQL 中的许多数据完整性问题
系统检查发现了一些问题: 警告:?:(mysql.W002)未为数据库连接“默认”设置 MySQL 严格模式 提示:MySQL 的严格模式通过将警告升级为错误来修复 MySQL 中的许多数据完整性问题
我想在相同的 phonegap 应用程序中使用 android 数据库。 更多说明: 我创建了 phonegap 应用程序,但 phonegap 应用程序不支持服务,所以我们已经在 java 中为 a
Time Tracker function clock() { var mytime = new Date(); var seconds
我需要在现有项目上实现一些事件的显示。我无法更改数据库结构。 在我的 Controller 中,我(从 ajax 请求)传递了一个时间戳,并且我需要显示之前的 8 个事件。因此,如果时间戳是(转换后)
我有一个可以收集和显示各种测量值的产品(不会详细介绍)。正如人们所期望的那样,显示部分是一个数据库+建立在其之上的网站(使用 Symfony)。 但是,我们可能还会创建一个 API 来向第三方公开数据
我们将 SQL Server 从 Azure VM 迁移到 Azure SQL 数据库。 Azure VM 为 DS2_V2、2 核、7GB RAM、最大 6400 IOPS Azure SQL 数据
我正在开发一个使用 MongoDB 数据库的程序,但我想问在通过 Java 执行 SQL 时是否可以使用内部数据库进行测试,例如 H2? 最佳答案 你可以尝试使用Testcontainers Test
已关闭。此问题不符合Stack Overflow guidelines 。目前不接受答案。 已关闭 9 年前。 此问题似乎与 a specific programming problem, a sof
我正在尝试使用 MSI 身份验证(无需用户名和密码)从 Azure 机器学习服务连接 Azure SQL 数据库。 我正在尝试在 Azure 机器学习服务上建立机器学习模型,目的是我需要数据,这就是我
我在我的 MySQL 数据库中使用这个查询来查找 my_column 不为空的所有行: SELECT * FROM my_table WHERE my_column != ""; 不幸的是,许多行在
我有那个基地:http://sqlfiddle.com/#!2/e5a24/2这是 WordPress 默认模式的简写。我已经删除了该示例不需要的字段。 如您所见,我的结果是“类别 1”的两倍。我喜欢
我有一张这样的 table : mysql> select * from users; +--------+----------+------------+-----------+ | userid
我有表: CREATE TABLE IF NOT EXISTS `category` ( `id` int(11) NOT NULL, `name` varchar(255) NOT NULL
我是一名优秀的程序员,十分优秀!