데이터를 내 Firebase 실시간 데이터베이스로 푸시하는 동안 오류가 발생합니다. 나는 몇 개의 튜토리얼을 확인했고 그들 모두에 따르면 나는 아무것도 잘못하고 있지 않습니다. 불행히도 Android 스튜디오 에뮬레이터 장치에서 데이터베이스를 업데이트 할 수 없습니다.
나는 디버그 모드를 활성화하고 모든 단일 프로세스를 밟았고 데이터베이스가 하위 ID로 푸시 할 때 응답하기 때문에 내 코드가 실제로 작동하는 것을 확인했습니다.
package com.example.fbconnect;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
public class MainActivity extends AppCompatActivity {
Button btnsaves;
Member member;
DatabaseReference myRef;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btnsaves=(Button)findViewById(R.id.button);
btnsaves.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
myRef = FirebaseDatabase.getInstance().getReference("Member");
String id = myRef.push().getKey();
member = new Member("MSmith", 12, id);
myRef.child(id).setValue(member);
Toast.makeText(MainActivity.this, "Success", Toast.LENGTH_SHORT).show();
}
});
}
}
이 줄로 디버깅 할 때
String id = myRef.push().getKey();
데이터베이스가 코드로 응답했음을 알았습니다. 그러나 새 값을 설정하거나 기존 데이터베이스 Childs의 값을 업데이트하지 않습니다.
디버그 모드를 활성화 한 후 Android 스튜디오에서 문제를 일으킬 수있는 드문 줄을 발견했습니다.
E / FirebaseInstanceId : AUTHENTICATION_FAILED와 같은 하드 실패 예외로 인해 주제 동기화 또는 토큰 검색에 실패했습니다. 작업을 다시 시도하지 않습니다.
내 firebase에서 인증을 활성화하지 않았 음을 확신합니다. 일반적으로 모든 사람이 읽고 쓸 수 있어야합니다 (나는 이것을 알고 있지만이 데이터베이스 연결이 작동하도록 필사적으로 적용합니다).
제발 날 좀 도와 줄 수 있니?
Firebase 콘솔> 데이터베이스> Firebase 실시간 데이터베이스> 규칙 탭으로 이동하여 읽기 및 쓰기를 true로 변경합니다. 또한 장치가 인터넷에 연결되어 있는지 확인하십시오.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다