- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
为什么当我在 Android 4.0 版本中运行时,此错误通常出现在 listview
中,任何人都可以帮助我解决这个问题。我搜索了一些网站,发现像在 中使用
我该如何实现它。asynctask
>url
我尝试过的:这是异步任务
public class GetTask extends AsyncTask<String, Void, Integer> {
private ProgressDialog progressDialog;
public GetTask(){
}
protected void onPreExecute() {
this.progressDialog=new ProgressDialog(FirstActivity.this);
this.progressDialog.show();
}
@Override
protected Integer doInBackground(String... userurl) {
page_count=0;
Callpagedetails();
return null;
}
protected void onPostExecute(Integer result) {
super.onPostExecute(result);
if (progressDialog.isShowing())
progressDialog.dismiss();
listview = (ListView) findViewById(R.id.listquestion);
listview.setAdapter(adapterf);
}
}
使用代码我收到“空指针异常”。这是我在 4.0 版本中尝试上述代码时的日志
04-30 07:25:04.842: E/AndroidRuntime(1654): FATAL EXCEPTION: AsyncTask #1
04-30 07:25:04.842: E/AndroidRuntime(1654): java.lang.RuntimeException: An error occured while executing doInBackground()
04-30 07:25:04.842: E/AndroidRuntime(1654): at android.os.AsyncTask$3.done(AsyncTask.java:299)
04-30 07:25:04.842: E/AndroidRuntime(1654): at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:352)
04-30 07:25:04.842: E/AndroidRuntime(1654): at java.util.concurrent.FutureTask.setException(FutureTask.java:219)
04-30 07:25:04.842: E/AndroidRuntime(1654): at java.util.concurrent.FutureTask.run(FutureTask.java:239)
04-30 07:25:04.842: E/AndroidRuntime(1654): at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230)
04-30 07:25:04.842: E/AndroidRuntime(1654): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
04-30 07:25:04.842: E/AndroidRuntime(1654): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
04-30 07:25:04.842: E/AndroidRuntime(1654): at java.lang.Thread.run(Thread.java:856)
04-30 07:25:04.842: E/AndroidRuntime(1654): Caused by: java.lang.NullPointerException
04-30 07:25:04.842: E/AndroidRuntime(1654): at com.example.know.FirstActivity.Callpagedetails(FirstActivity.java:227)
04-30 07:25:04.842: E/AndroidRuntime(1654): at com.example.know.FirstActivity$GetTask.doInBackground(FirstActivity.java:125)
04-30 07:25:04.842: E/AndroidRuntime(1654): at com.example.know.FirstActivity$GetTask.doInBackground(FirstActivity.java:1)
04-30 07:25:04.842: E/AndroidRuntime(1654): at android.os.AsyncTask$2.call(AsyncTask.java:287)
04-30 07:25:04.842: E/AndroidRuntime(1654): at java.util.concurrent.FutureTask.run(FutureTask.java:234)
04-30 07:25:04.842: E/AndroidRuntime(1654): ... 4 more
04-30 06:49:34.781: E/WindowManager(851): Activity com.example.know.FirstActivity has leaked window com.android.internal.policy.impl.PhoneWindow$DecorView{40cd41e8 V.E..... R.....ID 0,0-191,168} that was originally added here
04-30 06:49:34.781: E/WindowManager(851): android.view.WindowLeaked: Activity com.example.know.FirstActivity has leaked window com.android.internal.policy.impl.PhoneWindow$DecorView{40cd41e8 V.E..... R.....ID 0,0-191,168} that was originally added here
04-30 06:49:34.781: E/WindowManager(851): at android.view.ViewRootImpl.<init>(ViewRootImpl.java:354)
04-30 06:49:34.781: E/WindowManager(851): at android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:216)
04-30 06:49:34.781: E/WindowManager(851): at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:69)
04-30 06:49:34.781: E/WindowManager(851): at android.app.Dialog.show(Dialog.java:281)
04-30 06:49:34.781: E/WindowManager(851): at android.app.ProgressDialog.show(ProgressDialog.java:116)
04-30 06:49:34.781: E/WindowManager(851): at android.app.ProgressDialog.show(ProgressDialog.java:99)
04-30 06:49:34.781: E/WindowManager(851): at android.app.ProgressDialog.show(ProgressDialog.java:94)
04-30 06:49:34.781: E/WindowManager(851): at com.example.know.FirstActivity$GetTask.<init>(FirstActivity.java:99)
04-30 06:49:34.781: E/WindowManager(851): at com.example.know.FirstActivity.onCreate(FirstActivity.java:88)
04-30 06:49:34.781: E/WindowManager(851): at android.app.Activity.performCreate(Activity.java:5104)
04-30 06:49:34.781: E/WindowManager(851): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1080)
04-30 06:49:34.781: E/WindowManager(851): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2144)
04-30 06:49:34.781: E/WindowManager(851): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230)
04-30 06:49:34.781: E/WindowManager(851): at android.app.ActivityThread.access$600(ActivityThread.java:141)
04-30 06:49:34.781: E/WindowManager(851): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234)
04-30 06:49:34.781: E/WindowManager(851): at android.os.Handler.dispatchMessage(Handler.java:99)
04-30 06:49:34.781: E/WindowManager(851): at android.os.Looper.loop(Looper.java:137)
04-30 06:49:34.781: E/WindowManager(851): at android.app.ActivityThread.main(ActivityThread.java:5041)
04-30 06:49:34.781: E/WindowManager(851): at java.lang.reflect.Method.invokeNative(Native Method)
04-30 06:49:34.781: E/WindowManager(851): at java.lang.reflect.Method.invoke(Method.java:511)
04-30 06:49:34.781: E/WindowManager(851): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
04-30 06:49:34.781: E/WindowManager(851): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
04-30 06:49:34.781: E/WindowManager(851): at dalvik.system.NativeStart.main(Native Method)
谁能帮我解决这个@Thanks
最佳答案
你当前在波纹管代码块中的问题
public GetTask(){
progressDialog = ProgressDialog.show(FirstActivity.this, "Loading","Please Wait");
}
protected void onPreExecute() {
this.progressDialog.setMessage("Progress start");
this.progressDialog.show();
}
发生的事情是,当 GetTask() 被调用时,将显示一个进度对话框,并且在构造函数调用后 onPreExecute() 将被调用,并且此方法再次尝试显示相同的对话框。
你只需要将你的方法修改为..
public GetTask(){
//progressDialog = ProgressDialog.show(FirstActivity.this, "Loading","Please Wait");
}
protected void onPreExecute() {
this.progressDialog = new ProgressDialog(yourContext);
this.progressDialog.setTitle("Loading");
this.progressDialog.setMessage("Progress start");
this.progressDialog.show();
}
编码愉快:)
关于android.os.NetworkOnMainThreadException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16293721/
这个问题在这里已经有了答案: How can I fix 'android.os.NetworkOnMainThreadException'? (66 个回答) 关闭2年前。 我刚刚发现 Networ
这个问题在这里已经有了答案: How can I fix 'android.os.NetworkOnMainThreadException'? (65 个回答) 7年前关闭。 嗨,我正在尝试使用 an
这个问题已经有答案了: How can I fix 'android.os.NetworkOnMainThreadException'? (64 个回答) 已关闭 3 年前。 我在 Android 应
我的 Android 项目中有一个名为 EditTrip_Activity.java 的类/Activity ,并且我不断收到此 NetworkOnMainThreadException。我之前已经得
我试图从 MySQL 数据库获取产品的详细信息,但是当我编译代码时,即使我在调用 GetProductDetails 类来执行时将其用作 AsyncTask,也会收到 NetworkOnMainThr
这个问题已经有答案了: How can I fix 'android.os.NetworkOnMainThreadException'? (64 个回答) 已关闭 7 年前。 实际上,我尝试将图像文件
我想将视频(从图库中选择)上传到服务器(localhost-Wampserver 在我的计算机上运行 Apache 2.4.4)。从异常和搜索中,我发现网络操作不应该发生在UI运行的线程中。但我该怎么
我正在尝试将 Android 应用程序与 Twitter 连接,但我不知道这部分代码有什么问题: Thread thread = new Thread(){ @Override
为什么当我在 Android 4.0 版本中运行时,此错误通常出现在 listview 中,任何人都可以帮助我解决这个问题。我搜索了一些网站,发现像在 中使用 asynctask >url 我该如何实
在主线程上没有网络调用,但我仍然得到同样的错误:NetworkOnMainThreadException。 MainActivity.class: public class MainActivity
熟悉Android开发,习惯了在UIThread上进行网络调用时的NetworkOnMainThreadException异常。 但是在下面的情况下会抛出 IOException 而不会抛出 Netw
我了解到在 GUI 线程上不允许进行网络操作。对我来说还可以。但是为什么在 Dialog 按钮点击回调上使用这段代码仍然会产生 NetworkOnMainThreadException ? new T
我正在尝试使用套接字在 android 中编写一个服务器/客户端应用程序,并且我在 AsyncTask 中处理客户端套接字(服务器不是 android,只是普通的 java)。当我得到异常时我正在尝试
我已经通过所有 SO 的解决方案来解决 NetworkOnMainThreadException 包括 ASync 类 - 但仍然有问题 这是我的简单代码: ActivityMain 类: publi
这个问题已经有答案了: How can I fix 'android.os.NetworkOnMainThreadException'? (65 个回答) 已关闭 9 年前。 我开发了一个使用 and
我正在尝试通过启动 TCP 服务器来访问 android 网络。但是当我创建一个新线程时,要么 Thread t = new Thread(runnable); t.start(); 或FutureT
我尝试从 POST 请求中获取响应。问题是,尽管我正在使用 AsyncTask 进行网络通信,但有时我会得到 NetworkOnMainThreadException。这意味着有时我成功获得响应,有时
我按照此说明使用传感器模拟器在模拟器上调试我的应用程序: http://code.google.com/p/openintents/wiki/SensorSimulator#How_to_use_th
我在下面有一些代码: protected void testConnection(String url) { DefaultHttpClient httpclient = new Defaul
我的应用程序中有一些网络请求,每当调用网络相关代码时,我都会收到此异常。我已经把它们放在后台了: @Background protected void getBitmapFromURL
我是一名优秀的程序员,十分优秀!