仅在Google Play商店中出现NullPointerException?

时间:2014-08-15 09:31:29

标签: android nullpointerexception

我最近将我的应用更新上传到Google Play。在尝试时,我在点击手动添加的横幅时遇到错误(例如,不是AdMob或类似的东西)。单击是设置AsyncTask,使用POST将数据发送到php脚本。我使用ProGuard,所以当我向自己发送错误报告时,我只能看到导致错误的方法:doInBackground。我也能看到它是NullPointerException。奇怪的是,当我使用Eclipse从我的计算机上运行我的设备上的应用程序时,错误没有发生,所以我无法找到导致NullPointerException的行。它在我的应用程序的早期版本中运行良好,我还没有对此代码进行任何更改。当我查看方法doInBackground时,我无法找到NullPointerException可能出现的任何地方。

以下是来自我的开发者控制台的错误消息,但这是预先确定的:

java.lang.RuntimeException: An error occured while executing doInBackground()
at android.os.AsyncTask$3.done(AsyncTask.java:278)
at java.util.concurrent.FutureTask$Sync.innerSetException(FutureTask.java:273)
at java.util.concurrent.FutureTask.setException(FutureTask.java:124)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:307)
at java.util.concurrent.FutureTask.run(FutureTask.java:137)
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:208)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569)
at java.lang.Thread.run(Thread.java:856)
Caused by: java.lang.NullPointerException
at se.nollekollen.main.d.a(Unknown Source)
at se.nollekollen.main.d.doInBackground(Unknown Source)
at android.os.AsyncTask$2.call(AsyncTask.java:264)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305)
... 5 more

这是我的doInBackground:

@Override
protected String doInBackground(String... arg0) {
    String url_stats = "http://xxxxx.xx/statistik/sendStatistics_click.php";

    List<NameValuePair> params = new ArrayList<NameValuePair>();
    params.add(new BasicNameValuePair("activity", getClass().getEnclosingClass().getName().substring(20)));
    params.add(new BasicNameValuePair("section", SECTION));

    DefaultHttpClient httpClient = new DefaultHttpClient();
    HttpPost httpPost = new HttpPost(url_stats);

    try {
        httpPost.setEntity(new UrlEncodedFormEntity(params));
    } catch (UnsupportedEncodingException e1) {
        e1.printStackTrace();
    }

    try {
        httpClient.execute(httpPost);
    } catch (ClientProtocolException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }
    return null;
}

这里唯一可能为null的是#34; SECTION&#34;,但这不会导致NullPointerException,因为在创建新的BasicNameValuePair(键时,该值可以为null)值)。

任何人都可以找到导致NullPointerException的原因吗?如果应用程序是从Google Play下载的,而不是从计算机上运行时,这种情况怎么可能发生呢?

0 个答案:

没有答案