1

以下のコードで奇妙なエラーが発生しました。数時間はすべて正常に動作していますが、例外が発生してアプリが終了することがあります。

これは、私が非常に頻繁に (15 秒ごとに) 呼び出す私のコードです。

String URL = wscfg.server_address + "/xmds.php";
SoapObject localSoapObject = new SoapObject("", "registerDisplay");
localSoapObject.addProperty("serverKey", wscfg.server_key);
localSoapObject.addProperty("hardwareKey", wscfg.hardware_key);
localSoapObject.addProperty("version", wscfg.server_version);
localSoapObject.addProperty("displayName", wscfg.device_name);
SoapSerializationEnvelope localSoapSerializationEnvelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
localSoapSerializationEnvelope.bodyOut = localSoapObject;
new HttpTransportSE(URL).call("", localSoapSerializationEnvelope);
String s = (String)localSoapSerializationEnvelope.getResponse();

例外は次のとおりです。

01-22 13:33:55.048: E/AndroidRuntime(567): FATAL EXCEPTION: Timer-5
01-22 13:33:55.048: E/AndroidRuntime(567): java.lang.NullPointerException
01-22 13:33:55.048: E/AndroidRuntime(567):  at org.ksoap2.transport.ServiceConnectionSE.getResponseProperties(ServiceConnectionSE.java:85)
01-22 13:33:55.048: E/AndroidRuntime(567):  at org.ksoap2.transport.HttpTransportSE.call(HttpTransportSE.java:189)
01-22 13:33:55.048: E/AndroidRuntime(567):  at org.ksoap2.transport.HttpTransportSE.call(HttpTransportSE.java:114)
01-22 13:33:55.048: E/AndroidRuntime(567):  at com.gmgunderground.test.xmds.WebServiceManager.requiredFiles(WebServiceManager.java:66)
01-22 13:33:55.048: E/AndroidRuntime(567):  at com.gmgunderground.test.xmds.XmdsService.TimerSchedulerSupervisor(XmdsService.java:267)
01-22 13:33:55.048: E/AndroidRuntime(567):  at com.gmgunderground.test.xmds.XmdsService.access$1(XmdsService.java:248)
01-22 13:33:55.048: E/AndroidRuntime(567):  at com.gmgunderground.test.xmds.XmdsService$3.run(XmdsService.java:552)
01-22 13:33:55.048: E/AndroidRuntime(567):  at java.util.Timer$TimerImpl.run(Timer.java:284)

このエラーを解決するにはどうすればよいですか? アプリケーションが閉じないようにして null のみを返す方法はありますか? logcat からわかるように、エラーは KSOAP2 Android ライブラリ内にあります。

よろしくお願いします

ジャイアン

4

0 に答える 0