【发布时间】:2018-10-23 23:50:36
【问题描述】:
我有一个运行独立进程的应用程序。
问题是,我从另一个服务中获取了正确的用户 ID,但是当我执行 getUsersNotfs(url) 时,我在 String s onPostExecute: 05-14 11:23:39.806 17705-17705/com.example 上得到空值。糖尿病:offline_notifications I/System.out:空
但是,如果我在没有独立进程的情况下运行它,则字符串是正确的,并且我得到正确的结果 ([{"RecordID":"1","UserID":"1","RecordDate":"2018-05- 08 00:00:00"}])
这是我的代码:
传递用户 ID:
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
super.onStartCommand(intent, flags, startId);
uid = intent.getStringExtra("UserID");
startTimer();
return START_STICKY;
}
public void getUserNotfs(final String urlWebService) {
class GetJSON extends AsyncTask<Void, Void, String> {
@Override
protected void onPreExecute() {
super.onPreExecute();
}
@Override
protected void onPostExecute(String s) {
super.onPostExecute(s);
System.out.println(s);
}
@Override
protected String doInBackground(Void... voids) {
try {
URL url = new URL(urlWebService);
System.out.println(url);
HttpURLConnection con = (HttpURLConnection) url.openConnection();
StringBuilder sb = new StringBuilder();
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(con.getInputStream()));
String json;
while ((json = bufferedReader.readLine()) != null) {
sb.append(json + "\n");
}
return sb.toString().trim();
} catch (Exception e) {
return null;
}
}
}
GetJSON getJSON = new GetJSON();
getJSON.execute();
}
谢谢
【问题讨论】:
-
放个debug看看有没有抓到异常
-
pastebin.com/n1DE6KQT@MạnhQuyếtNguyễn
标签: java android json http service