Nan*_*r R 4 api android thread-safety background-process android-3.0-honeycomb
我正在创建一个服务和一个应用程序.App可以调用服务上的方法.该方法调用API并基于API,给出结果.由于该应用程序是针对Android 3.0,我得到"NetworkOnMainThreadException".
我的要求是这样一种方式,我无法从app中调用后台线程中的方法.服务方法也应该返回一个基于API调用的布尔值.
有没有办法在android蜂窝中的主线程上调用网络API调用?
小智 27
import android.os.StrictMode;
StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(policy);
Run Code Online (Sandbox Code Playgroud)
我正在创建一个服务和一个应用程序.
服务是"app"的一部分.我将假设你的意思是"活动",你写的是"app".
我的要求是这样一种方式,我无法从app中调用后台线程中的方法.
那么创造这个"要求"的人就是白痴,应该被解雇.然后,删除此要求.始终在后台线程上执行网络操作.
由于该应用程序是针对Android 3.0,我得到"NetworkOnMainThreadException".
那是因为StrictMode默认情况下警告你这些事情.虽然警告是新的,但是在您的代码运行的所有Android版本上都存在问题.
有没有办法在android蜂窝中的主线程上调用网络API调用?
这绝不应该在生产代码中完成.修改您的应用程序以在后台线程上执行网络I/O(例如,AsyncTask).
| 归档时间: |
|
| 查看次数: |
4500 次 |
| 最近记录: |