我正在学习在Android中开发服务并遵循Marakana Yamba示例。winterwell.jtwitter.TwitterException:org.json.JSONException:值java.lang.String类型的<!DOCTYPE无法转换为JSONArray
我已经创建了UpdaterService,它可以提取推文和常规时间间隔,以及一个RefreshService,它将在选择时拉动推文。
对于拉动鸣叫的代码是在这两种服务,但在RefreshService我得到以下错误,而UpdateService运行withput任何错误相同:
02-19 14:31:41.359 1323-1345/com.tutorial.yamba.yamba W/System.err﹕ winterwell.jtwitter.TwitterException: org.json.JSONException: Value (JSONArray.java:96) 02-19 14:31:41.379 1323-1345/com.tutorial.yamba.yamba W/System.err﹕ at org.json.JSONArray.(JSONArray.java:108) 02-19 14:31:41.389 1323-1345/com.tutorial.yamba.yamba W/System.err﹕ at winterwell.jtwitter.Twitter$Status.getStatuses(Twitter.java:339) 02-19 14:31:41.389 1323-1345/com.tutorial.yamba.yamba W/System.err﹕ ... 7 more
下面是RefreshService类
package com.tutorial.yamba.yamba;
import android.app.IntentService;
import android.content.Intent;
import android.util.Log;
import java.util.List;
import winterwell.jtwitter.Twitter;
import winterwell.jtwitter.Twitter.Status;
import winterwell.jtwitter.TwitterException;
public class RefreshService extends IntentService {
static final String TAG = "RefreshService";
Twitter twitter;
public RefreshService() {
super(TAG);
}
@Override
public void onCreate() {
super.onCreate();
twitter = new Twitter(someusername, somepassword);
twitter.setAPIRootUrl("http://www.yamba.marakana.com/api");
Log.d(TAG, "onCreate");
}
@Override
protected void onHandleIntent(Intent intent) {
Log.d(TAG,"onhandleIntent enter");
try {
List<Status> timeline = twitter.getPublicTimeline();
Log.d(TAG,timeline.size()+"");
for (Status status : timeline)
{
Log.d(TAG, String.format("%s: %s", status.user.name, status.text));
}
} catch (Exception e) {
e.printStackTrace();
}
}
@Override
public void onDestroy() {
super.onDestroy();
Log.d(TAG, "onDestroy");
}
}
任何帮助将不胜感激。
谢谢。
下载最新JTwitter但是代码相同的路径从UpdateService类工作。 – user3275095
@ user3275095 UpdateService类? Jtwitter没有一个。这是你自己的课程/来自教程的东西吗?请提供更多细节。 –
准确。这两个类都来自教程。 – user3275095