Cap*_*ket 4 android firebase google-cloud-firestore
我对 Android 和 Firestore 都很陌生,无法弄清楚如何设置 Firestore 对象的设置。这是我一直在使用的代码:
public class MainActivity extends AppCompatActivity
FirebaseFirestore firestore;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
firestore = FirebaseFirestore.getInstance();
FirebaseFirestoreSettings settings = new FirebaseFirestoreSettings.Builder().setTimestampsInSnapshotsEnabled(true).build();
firestore.setFirestoreSettings(settings);
}
Run Code Online (Sandbox Code Playgroud)
但这给出了一个错误:
java.lang.IllegalStateException: FirebaseFirestore has already been started and its settings can no longer be changed. You can only call setFirestoreSettings() before calling any other methods on a FirebaseFirestore object.
Run Code Online (Sandbox Code Playgroud)
但是,此错误仅在我使用 setPersistanceEnabled(false) 和/或 setTimestampsInSnapshotsEnabled(true) 时发生。
如果我使用 setPersistanceEnabled(true) 和/或 setTimestampsInSnapshotsEnabled(false),应用程序就可以工作。
如果有人可以帮助我真的很感激。我已经坚持了一段时间了。
小智 5
您可能在此代码之前从不同的活动或服务执行一些数据库操作。
任何数据库操作都会使用默认设置 setPersistanceEnabled(true) 和 setTimestampsInSnapshotsEnabled(false) 初始化 Firestore。当您随后设置相同的设置时,它工作正常。当您尝试更改设置时,它会引发异常。
在我的情况下,设置是在主活动中设置的,但是当通过快捷方式调用不同的活动并执行数据库操作时,在此之后启动主活动会导致异常。
| 归档时间: |
|
| 查看次数: |
1729 次 |
| 最近记录: |