Хорошо. Вот моя проблема.Android FQL Call Возвращение пустым после успешных вызовов [Изменено название]
Я делаю запрос FQL, и я сохраняю данные ответа. Мой код работает нормально, за исключением примерно через 4 минуты работы приложения. Я получаю исключение JSONException. Исключение читает
A JSONArray text must start with '[' at character 0 of
что странно, потому что если я типа в URL запроса делает в браузере я получаю следующее
[{"uid":SOMENUMBER},{"uid":SOMENUMBER}]
Который явно начинается с «[» характер.
Вот просьбой об
String query = "SELECT uid FROM user WHERE is_app_user=1 and uid IN (SELECT uid2 FROM friend WHERE uid1 =" + fbId + ")";
Bundle params = new Bundle();
params.putString("method", "fql.query");
params.putString("query", query);
mAsyncFacebookRunner.request(null, params, new FQLRequestListener());
Вот RequestListener
private class FQLRequestListener implements RequestListener
{
@Override
public void onComplete(String response, Object state)
{
try {
JSONArray json = new JSONArray(response);
friendsIds = new ArrayList<String>();
for(int i = 0; i < json.length(); ++i)
{
String uid = json.getJSONObject(i).getString("uid");
friendsIds.add(uid);
Log.d("friends", friendsIds.get(i));
}
InviteFriends.this.runOnUiThread(new Runnable()
{
@Override
public void run()
{
setUpList();
}
});
} catch (JSONException e) {
e.printStackTrace();
}
}
и стек ..
06-15 16:43:21.744: D/Facebook-Util(866): GET URL: THIS IS THE URL THAT WORKS IN A BROSWER (actual URL removed)
06-15 16:43:21.774: W/System.err(866): org.json.JSONException: A JSONArray text must start with '[' at character 0 of
06-15 16:43:21.774: W/System.err(866): at org.json.JSONTokener.syntaxError(JSONTokener.java:448)
06-15 16:43:21.774: W/System.err(866): at org.json.JSONArray.<init>(JSONArray.java:104)
06-15 16:43:21.774: W/System.err(866): at org.json.JSONArray.<init>(JSONArray.java:150)
06-15 16:43:21.774: W/System.err(866): at rageup.android.InviteFriends$FQLRequestListener.onComplete(InviteFriends.java:129)
06-15 16:43:21.774: W/System.err(866): at com.facebook.android.AsyncFacebookRunner$2.run(AsyncFacebookRunner.java:254)
Я хотел бы отметить, что ..
Query работает, когда я выхожу из системы и заходим в систему.
Я гарантировал, что мой сеанс Facebook действителен.
Приведенный в Facebook пример «Hackbook» имеет ту же проблему при загрузке списка друзей.
Поток Получение за исключением
Главная страница Где Бревна пользователя В
пользователь нажимает кнопку, чтобы начать второе действие
Вторая активность является Где запрос сделан
возвращение домой
Повторите примерно через 4 минуты минус Войти
Если вы не публикуете свой код и не видите трассировку стека, невозможно увидеть, что происходит. – Christine
Просто уточнить: Вы говорите, что когда вы начинаете свое приложение, вы входите в FB, и он работает. Затем, если вы запустите указанный выше код за 4 минуты, он будет работать, и если вы запустите его через 4 минуты, это не так? –
Да Вы правы –