何か助けに感謝します。 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