【发布时间】:2019-12-15 16:51:44
【问题描述】:
这是我的代码:
using Android.App;
using Android.OS;
using Android.Support.V7.App;
using Android.Runtime;
using Android.Widget;
using firestore;
using Firebase.Firestore;
using Firebase;
using Java.Util;
namespace firestore
{
[Activity(Label = "@string/app_name", Theme = "@style/AppTheme", MainLauncher = true)]
public class MainActivity : AppCompatActivity
{
EditText phone;
EditText password;
Button save;
FirebaseFirestore database;
protected override void OnCreate(Bundle savedInstanceState)
{
base.OnCreate(savedInstanceState);
// Set our view from the "main" layout resource
SetContentView(Resource.Layout.activity_main);
phone = (EditText)FindViewById(Resource.Id.phone);
password = (EditText)FindViewById(Resource.Id.password);
save= (Button)FindViewById(Resource.Id.save);
save.Click += Save_Click;
database = GetDatabase();
}
private void Save_Click(object sender, System.EventArgs e)
{
HashMap map = new HashMap();
map.Put("phone",phone.Text);
map.Put("password",password.Text);
DocumentReference docref = database.Collection("users").Document();
docref.Set(map);
}
public FirebaseFirestore GetDatabase()
{
FirebaseFirestore database;
var options = new FirebaseOptions.Builder()
.SetProjectId("mohammed-682b7")
.SetApplicationId("mohammed-682b7")
.SetApiKey("AIzaSyC_atciyoeH0BMCD3rTTHPGtZa4EU1fu7k")
.SetDatabaseUrl("https://mohammed-682b7.firebaseio.com")
.SetStorageBucket("mohammed-682b7.appspot.com")
.Build();
var app = FirebaseApp.InitializeApp(this, options);
database = FirebaseFirestore.GetInstance(app);
return database;
}
}
我收到此错误:
未处理的异常:
Java.Lang.RuntimeException:<Timeout exceeded getting exception details>发生
我按照这个链接的解释:https://www.youtube.com/watch?v=mneY6H0zMNE
这是输出: 在 java.util.concurrent.FutureTask.run(FutureTask.java:266) 12-16 20:08:22.896 E/AndroidRuntime(10311): 在 java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:301) 12-16 20:08:22.896 E/AndroidRuntime(10311): 在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162) 12-16 20:08:22.896 E/AndroidRuntime(10311): 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636) 12-16 20:08:22.896 E/AndroidRuntime(10311): at com.google.android.gms.internal.zzejp$zza.run(未知来源:7) 12-16 20:08:22.896 E/AndroidRuntime(10311): 在 java.lang.Thread.run(Thread.java:764) 12-16 20:08:22.896 E/AndroidRuntime(10311):原因:java.lang.ClassNotFoundException:在路径上找不到类“com.google.common.base.Preconditions”:DexPathList [[zip 文件“/ data/app/firestore.firestore-h-EYnpx7ZY1EvLUwpnKzoQ==/base.apk"],nativeLibraryDirectories=[/data/app/firestore.firestore-h-EYnpx7ZY1EvLUwpnKzoQ==/lib/x86, /data/app/firestore.firestore -h-EYnpx7ZY1EvLUwpnKzoQ==/base.apk!/lib/x86, /system/lib, /vendor/lib]] 12-16 20:08:22.896 E/AndroidRuntime(10311): 在 dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:125) 12-16 20:08:22.896 E/AndroidRuntime(10311): 在 java.lang.ClassLoader.loadClass(ClassLoader.java:379) 12-16 20:08:22.896 E/AndroidRuntime(10311): 在 java.lang.ClassLoader.loadClass(ClassLoader.java:312) 12-16 20:08:22.896 E/AndroidRuntime(10311): ... 20 更多 未处理的异常:
Java.Lang.RuntimeException:
线程完成:#5 线程 0x5 以代码 0 (0x0) 退出。 线程完成:#7 线程 0x7 以代码 0 (0x0) 退出。 线程完成:#4 线程 0x4 以代码 0 (0x0) 退出。 线程完成:#6 线程 0x6 已退出,代码为 0 (0x0)。
【问题讨论】:
-
您需要捕获异常并捕获/打印/记录其详细信息
-
为了分析这个错误的原因,能否请您按照jason所说的那样发布这个错误的完整日志?
-
谢谢我编辑了问题以附加程序的输出
-
根据你贴的错误日志,你可以尝试在你的项目中添加nuget Xamarin.Google.Guava,再试一次。
-
我在我的项目中添加了 Xamarin.Google.Guava
标签: android xamarin google-cloud-firestore