Je travaille actuellement sur une application de messagerie instantanée sur Android. J'utilise Firebase comme serveur Cloud. Actuellement, je fais face à un Cannot Resolve Symbol error
sur DatabaseReference
et à FirebaseDatabase
à la ligne suivante dans ma MainActivity
:
private DatabaseReference root = FirebaseDatabase.getInstance().getReference().getRoot();
Je souhaite créer des forums de discussion avec Firebase. Je sais comment faire cela, ainsi que comment relier les clés et les valeurs de ma base de données Firebase. Je sais aussi comment mettre à jour les clés et les valeurs d'un appareil Android via Firebase Cloud.
Mais je ne parviens pas à résoudre le Cannot resolve Symbol error
. Voici le code de ma MainActivity
. Je suis encore au début de la création de cette application.
package com.ranatalha.realtimechat;
import Android.content.DialogInterface;
import Android.os.Bundle;
import Android.support.v7.app.AlertDialog;
import Android.support.v7.app.AppCompatActivity;
import Android.view.View;
import Android.widget.ArrayAdapter;
import Android.widget.Button;
import Android.widget.EditText;
import Android.widget.ListView;
import Java.util.ArrayList;
public class MainActivity extends AppCompatActivity {
private Button buttonAddRoom;
private EditText editTextAddaChatRoom;
private ListView listViewChatRooms;
private ArrayAdapter<String> arrayAdapter;
private ArrayList<String> list_of_rooms = new ArrayList<>();
private String Entered_Username;
private DatabaseReference root = FirebaseDatabase.getInstance().getReference().getRoot();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
buttonAddRoom = (Button) findViewById(R.id.buttonAddRoom);
editTextAddaChatRoom = (EditText) findViewById(R.id.editTextAddaChatRoom);
listViewChatRooms = (ListView) findViewById(R.id.listViewChatRooms);
//************Creation of an array list to store the list of active chat rooms************
arrayAdapter = new ArrayAdapter<String>(this,Android.R.layout.simple_list_item_1, list_of_rooms);
listViewChatRooms.setAdapter(arrayAdapter);
//*****************************************************************************************
request_user_name();
buttonAddRoom.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
}
});
}
private void request_user_name(){
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("Enter Your Name:");
final EditText inputUsername = new EditText(this);
builder.setView(inputUsername);
builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
Entered_Username = inputUsername.getText().toString();
}
});
builder.setNegativeButton("CANCEL", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
dialogInterface.cancel();
request_user_name();
}
});
builder.show();
}
}
Pouvez-vous vérifier si vous avez ces dépendances dans votre fichier build.gradle
(Module: app)?
implementation 'com.google.firebase:firebase-core:16.0.7'
implementation 'com.google.firebase:firebase-database:16.0.6'
L'erreur disparaît après avoir ajouté ceux-ci.
implementation 'com.google.firebase:firebase-core:11.0.4'
implementation 'com.google.firebase:firebase-database:11.0.4'
Vous devez ajouter ces dépendances dans votre
1) Fichier build.gradle (module: app).
implementation 'com.google.firebase:firebase-database:11.6.2'
2) build.gradle (construction de niveau supérieur)
classpath 'com.google.gms:google-services:3.1.0'
3) ajouter google-services.json dans le module d'application dans Android Studio