4

我有一个简单的 android 程序,类似于 Windows Azure 移动服务中的 ToDoActivity,每当我接到来电时,一旦呼叫结束,应用程序就会抛出异常,但不会关闭程序。谁能给我有关如何阻止这种情况的任何信息?

这是 logcat 抛出的内容:

10-02 12:32:17.682: W/System.err(6314): com.microsoft.windowsazure.mobileservices.MobileServiceException: Error while processing request.
10-02 12:32:17.757: W/System.err(6314):     at com.microsoft.windowsazure.mobileservices.MobileServiceConnection$1.onNext(MobileServiceConnection.java:122)
10-02 12:32:17.757: W/System.err(6314):     at com.creative.connection.timeschedulr.DisplayContentActivity$ProgressFilter.handleRequest(DisplayContentActivity.java:819)
10-02 12:32:17.757: W/System.err(6314):     at com.microsoft.windowsazure.mobileservices.MobileServiceConnection.start(MobileServiceConnection.java:93)
10-02 12:32:17.757: W/System.err(6314):     at com.microsoft.windowsazure.mobileservices.RequestAsyncTask.doInBackground(RequestAsyncTask.java:77)
10-02 12:32:17.757: W/System.err(6314):     at com.microsoft.windowsazure.mobileservices.RequestAsyncTask.doInBackground(RequestAsyncTask.java:1)
10-02 12:32:17.757: W/System.err(6314):     at android.os.AsyncTask$2.call(AsyncTask.java:185)
10-02 12:32:17.757: W/System.err(6314):     at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:306)
10-02 12:32:17.757: W/System.err(6314):     at java.util.concurrent.FutureTask.run(FutureTask.java:138)
10-02 12:32:17.757: W/System.err(6314):     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1088)
10-02 12:32:17.757: W/System.err(6314):     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:581)
10-02 12:32:17.757: W/System.err(6314):     at java.lang.Thread.run(Thread.java:1019)
10-02 12:32:17.757: W/System.err(6314): Caused by: java.net.UnknownHostException: scheduler.azure-mobile.net
10-02 12:32:17.768: W/System.err(6314):     at java.net.InetAddress.lookupHostByName(InetAddress.java:516)
10-02 12:32:17.768: W/System.err(6314):     at java.net.InetAddress.getAllByNameImpl(InetAddress.java:294)
10-02 12:32:17.768: W/System.err(6314):     at java.net.InetAddress.getAllByName(InetAddress.java:256)
10-02 12:32:17.768: W/System.err(6314):     at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:136)
10-02 12:32:17.768: W/System.err(6314):     at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164)
10-02 12:32:17.768: W/System.err(6314):     at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119)
10-02 12:32:17.768: W/System.err(6314):     at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:359)
10-02 12:32:17.768: W/System.err(6314):     at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555)
10-02 12:32:17.768: W/System.err(6314):     at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487)
10-02 12:32:17.768: W/System.err(6314):     at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:465)
10-02 12:32:17.768: W/System.err(6314):     at android.net.http.AndroidHttpClient.execute(AndroidHttpClient.java:243)
10-02 12:32:17.768: W/System.err(6314):     at com.microsoft.windowsazure.mobileservices.ServiceFilterRequestImpl.execute(ServiceFilterRequestImpl.java:71)
10-02 12:32:17.772: W/System.err(6314):     at com.microsoft.windowsazure.mobileservices.MobileServiceConnection$1.onNext(MobileServiceConnection.java:102)
10-02 12:32:17.772: W/System.err(6314):     ... 10 more
4

1 回答 1

0

看起来错误正在被抛出,因为该应用程序当时无法访问您的移动服务,如下所述:

引起:java.net.UnknownHostException:scheduler.azure-mobile.net

如果您能够重现这一点,我高度怀疑它与移动服务或 SDK 有关,而不是您设备上的网络可用性。如果无法从应用程序内部的哪个位置看到错误被抛出(即触发网络请求的原因),很难准确说出可能导致此错误的原因。我唯一的假设是,当设备由于电话呼叫而仍然没有任何网络连接时,您会以某种方式触发网络请求。如果您可以提供重现的确切步骤以及触发网络请求的原因,我也许可以更深入地挖掘。

于 2013-10-04T21:46:23.387 回答