【发布时间】:2018-12-07 06:30:33
【问题描述】:
我收到此错误
Caused by: android.database.sqlite.SQLiteException: no such table:
有什么办法可以抓住它。
我尝试使用 try and catch 并且不工作的应用程序崩溃了
我的代码
JsonStroageMilla jsonStroageMilla=new JsonStroageMilla();
jsonStroageMilla.findById(JsonStroageMilla.class,1);
我的班级
@Keep
public class JsonStroageMilla extends SugarRecord {
public JsonStroageMilla(){
}
public String getData() {
return data;
}
public void setData(String data) {
this.data = data;
}
public String getTime() {
return time;
}
public void setTime(String time) {
this.time = time;
}
String data,time;
}
完整的错误代码
致命异常:主要 进程:com.valyangadi,PID:16477 java.lang.RuntimeException:无法启动活动 组件信息{com.app/CheckoutActivity062802}: android.view.InflateException:二进制 XML 文件第 23 行:二进制 XML 文件第 32 行:膨胀类片段时出错 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2426) 在 android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2490) 在 android.app.ActivityThread.-wrap11(ActivityThread.java) 在 android.app.ActivityThread$H.handleMessage(ActivityThread.java:1354) 在 android.os.Handler.dispatchMessage(Handler.java:102) 在 android.os.Looper.loop(Looper.java:148) 在 android.app.ActivityThread.main(ActivityThread.java:5443) 在 java.lang.reflect.Method.invoke(本机方法) 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:728) 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618) 引起:android.view.InflateException:二进制 XML 文件第 23 行: 二进制 XML 文件第 32 行:膨胀类片段时出错 在 android.view.LayoutInflater.inflate(LayoutInflater.java:539) 在 android.view.LayoutInflater.inflate(LayoutInflater.java:423) 在 android.view.LayoutInflater.inflate(LayoutInflater.java:374) 在 android.support.v7.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java:292) 在 android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140) 在 com.shopify.sample.checkout.CheckoutActivity062802.onCreate(CheckoutActivity062802.java:18) 在 android.app.Activity.performCreate(Activity.java:6245) 在 android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1130) 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2379) 在 android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2490) 在 android.app.ActivityThread.-wrap11(ActivityThread.java) 在 android.app.ActivityThread$H.handleMessage(ActivityThread.java:1354) 在 android.os.Handler.dispatchMessage(Handler.java:102) 在 android.os.Looper.loop(Looper.java:148) 在 android.app.ActivityThread.main(ActivityThread.java:5443) 在 java.lang.reflect.Method.invoke(本机方法) 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:728) 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618) 引起:android.view.InflateException:二进制 XML 文件第 32 行: 膨胀类片段时出错 在 android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:782) 在 android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:704) 在 android.view.LayoutInflater.rInflate(LayoutInflater.java:835) 在 android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798) 在 android.view.LayoutInflater.rInflate(LayoutInflater.java:838) 在 android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798) 在 android.view.LayoutInflater.rInflate(LayoutInflater.java:838) 在 android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798) 在 android.view.LayoutInflater.rInflate(LayoutInflater.java:838) 在 android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798) 在 android.view.LayoutInflater.parseInclude(LayoutInflater.java:971) 在 android.view.LayoutInflater.rInflate(LayoutInflater.java:831) 在 android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798) 在 android.view.LayoutInflater.inflate(LayoutInflater.java:515) 在 android.view.LayoutInflater.inflate(LayoutInflater.java:423) 在 android.view.LayoutInflater.inflate(LayoutInflater.java:374) 在 android.support.v7.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java:292) 在 android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140) 在 com.shopify.sample.checkout.CheckoutActivity062802.onCreate(CheckoutActivity062802.java:18) 在 android.app.Activity.performCreate(Activity.java:6245) 在 android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1130) 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2379) 在 android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2490) 在 android.app.ActivityThread.-wrap11(ActivityThread.java) 在 android.app.ActivityThread$H.handleMessage(ActivityThread.java:1354) 在 android.os.Handler.dispatchMessage(Handler.java:102) 在 android.os.Looper.loop(Looper.java:148) 在 android.app.ActivityThread.main(ActivityThread.java:5443) 在 java.lang.reflect.Method.invoke(本机方法) 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:728) 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618) 引起:android.database.sqlite.SQLiteException:没有这样的表: JSON_STROAGE_MILLA(代码 1):,编译时:SELECT * FROM JSON_STROAGE_MILLA 在 android.database.sqlite.SQLiteConnection.nativePrepareStatement(本机 方法) 在 android.database.sqlite.SQLiteConnection.acquirePreparedStatement(SQLiteConnection.java:887) 在 android.database.sqlite.SQLiteConnection.prepare(SQLiteConnection.java:498) 在 android.database.sqlite.SQLiteSession.prepare(SQLiteSession.java:588) 在 android.database.sqlite.SQLiteProgram.(SQLiteProgram.java:58) 在 android.database.sqlite.SQLiteQuery.(SQLiteQuery.java:37) 在 android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:44) 在 android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1316) 在 android.database.sqlite.SQLiteDatabase.queryWithFactory(SQLiteDatabase.java:1163) 在 android.database.sqlite.SQLiteDatabase.query(SQLiteDatabase.java:1034) 在 android.database.sqlite.SQLiteDatabase.query(SQLiteDatabase.java:1240) 在 com.orm.SugarRecord.find(SugarRecord.java:201) 在 com.orm.SugarRecord.listAll(SugarRecord.java:127) 在
【问题讨论】:
-
能否分享一下代码
-
您确定该表存在吗?
-
我在用糖,我不知道他们是怎么做桌子的
-
我们只是调用 object.save() 来插入和 findbyid 从 sqlite 读取
-
我认为你没有正确实现 Sugar,无论如何我认为 try and catch 正在工作并且你的应用程序由于一些 xml 布局问题而崩溃