Код: Выделить всё
package com.example.finalonaloto;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import androidx.activity.EdgeToEdge;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import androidx.core.graphics.Insets;
import androidx.core.view.ViewCompat;
import androidx.core.view.WindowInsetsCompat;
import com.google.android.gms.tasks.OnCompleteListener;
import com.google.android.gms.tasks.OnFailureListener;
import com.google.android.gms.tasks.OnSuccessListener;
import com.google.android.gms.tasks.Task;
import com.google.firebase.FirebaseApp;
import com.google.firebase.firestore.FirebaseFirestore;
import java.util.HashMap;
import java.util.Map;
public class MainActivity extends AppCompatActivity {
private static final String TAG = "MainActivity";
private EditText enterTitle;
private EditText enterThought;
private Button saveButton;
// Klucoj
public static final String KEY_TITLE = "title";
public static final String KEY_THOUGHT = "thought";
// Praenje konekcija so Firestore
private FirebaseFirestore db = FirebaseFirestore.getInstance();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
FirebaseApp.initializeApp(this);
EdgeToEdge.enable(this);
setContentView(R.layout.activity_main);
ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.main), (v, insets) -> {
Insets systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars());
v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom);
return insets;
});
Log.d(TAG, "Firestore instance: " + db);
saveButton = findViewById(R.id.save_button);
enterTitle = findViewById(R.id.edit_text_title);
enterThought = findViewById(R.id.edit_text_thoughts);
saveButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String title = enterTitle.getText().toString().trim();
String thought = enterThought.getText().toString().trim();
Map data = new HashMap();
data.put(KEY_TITLE, title);
data.put(KEY_THOUGHT, thought);
db.collection("Journal")
.document("First Thoughts")
.set(data)
.addOnSuccessListener(new OnSuccessListener() {
@Override
public void onSuccess(Void unused) {
Toast.makeText(MainActivity.this, "Sucess", Toast.LENGTH_LONG)
.show();
}
})
.addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
Log.d(TAG, "onFailure: " + e.getMessage(), e);
Toast.makeText(MainActivity.this, "Failed to save data", Toast.LENGTH_LONG).show();
}
}).addOnCompleteListener(new OnCompleteListener() {
@Override
public void onComplete(@NonNull Task task) {
Log.d(TAG, "onFailure: " + task.toString());
Toast.makeText(MainActivity.this, "Failed to cpom[lete data", Toast.LENGTH_LONG).show();
}
});
}
});
}
}
Подробнее здесь: https://stackoverflow.com/questions/791 ... nsole-site