任何帮助,非常感谢。我使用适用于Android Studio的Microsoft Azure Mobile SDK为我的Android应用程序创建了后端。但是,当我尝试从服务器使用查询获取数据时,该应用程序挂起并崩溃。我的代码如下:当Azure SQL查询产生时,Android应用程序崩溃
//The variables
private MobileServiceClient mClient;
private MobileServiceTable<Item> table;
//In onCreate method
try {
mClient = new MobileServiceClient("https://myapp.azurewebsites.net", this);
} catch (MalformedURLException e) {
e.printStackTrace();
}
table = mClient.getTable("MyTable",Item.class);
try {
final List<Item> result = table.execute().get();//----App crashes here
} catch (MobileServiceException e) {
e.printStackTrace();
}
stacktrace说什么? “挂起和崩溃”包含完全零的细节。 – f1sh
那么如果这是主线程执行一个查询并获得像这样的结果将导致NetworkOnMainThreadException。但是你没有发布堆栈跟踪,所以我猜测。一般来说,尽管你不应该在AsyncTask上做一个get()。我希望他们删除电话以阻止用户使用它。 –
您可能会收到NetworkOnMainThreadException。你不应该在主线程上运行网络任务。使用ASyncTask。 您还应该弹出问题中的堆栈跟踪,以便我们可以看到错误。 – apmartin1991