Một khách hàng đã báo cáo một lỗi lạ. Khi làm một AndroidHttpClient.execute bình thường() trong một AsyncTask, các tai nạn ứng dụng và anh nhận được stack trace sauAndroidHttpClient Nullpointerexception gọi android.net.http.AndroidHttpClient.isMmsRequest
java.lang.RuntimeException: An error occured while executing doInBackground()
at android.os.AsyncTask$3.done(AsyncTask.java:299)
at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:352)
at java.util.concurrent.FutureTask.setException(FutureTask.java:219)
at java.util.concurrent.FutureTask.run(FutureTask.java:239)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
at java.lang.Thread.run(Thread.java:841)
Caused by: java.lang.NullPointerException
at android.net.http.AndroidHttpClient.isMmsRequest(AndroidHttpClient.java:257)
at android.net.http.AndroidHttpClient.checkMmsSendPermission(AndroidHttpClient.java:290)
at android.net.http.AndroidHttpClient.execute(AndroidHttpClient.java:296)
at com.xxx.xxx.MyClass$MyHandler.doWork(MyClass.java:325)
at com.xxx.xxx.NetworkRequestHandler$AsyncTaskForRequestHandler.doInBackground(NetworkRequestHandler.java:532)
at com.xxx.xxx.utils.network.NetworkRequestHandler$AsyncTaskForRequestHandler.doInBackground(NetworkRequestHandler.java:1)
at android.os.AsyncTask$2.call(AsyncTask.java:287)
at java.util.concurrent.FutureTask.run(FutureTask.java:234)
... 3 more
Tại sao nó gọi checkMMSSendPermission và isSmsRequest? Chúng tôi không sử dụng MMS và SMS, và ứng dụng không có các quyền đó, mà tôi đoán là tại sao nó bị treo. Điều này phù hợp với tất cả 99,9% người dùng khác của chúng tôi.
Mã trông như thế này
AndroidHttpClient client = AndroidHttpClient.newInstance(null);
InputStream inputStream = null;
try
{
HttpPost request = new HttpPost(urlString);
prepareURLRequest(request);
HttpResponse response = client.execute(request);
mResultStatus = response.getStatusLine().getStatusCode();
inputStream = response.getEntity().getContent();
...
Bất kỳ trợ giúp sẽ được chào đón
Cập nhật
Điều này dường như được chỉ ảnh hưởng đến Sony Xperia Z, Z1 và ZR điện thoại. Rõ ràng các vấn đề bắt đầu xảy ra sau khi nhận được bản cập nhật cho Android 4.3. Không ai có điện thoại có thể sử dụng ứng dụng của chúng tôi nhưng cho tất cả những người khác, nó hoạt động.
sử dụng 'HttpClient client = new DefaultHttpClient();' – Raghunandan
Cảm ơn bạn đã bình luận của bạn. Điều đó có giải quyết được vấn đề với MMS không? Bạn đã từng gặp vấn đề này chưa? – KlasE
Tôi đã gặp vấn đề tương tự trên một chiếc Sony XL39h. Và nó hoạt động sau khi thay đổi thành 'DefaultHttpClient'. Bạn đã tìm thấy một giải pháp cho vấn đề này mà không thay đổi 'HttpClient'? –