Я пытаюсь создать простое приложение для Android с помощью API Google Tasks.
Однако, что бы я ни пытался изменить или включить, мое приложение компилируется нормально, но вылетает на телефоне всякий раз, когда я пытаюсь использовать API задач.
Все библиотеки находятся в моей папке libs, но я не могу определить, какие зависимости мне также нужно включить.
Это мой текущий код, когда я удаляю комментарии строк задач, мое приложение вылетает сразу после открытия на телефоне.
Штекер предназначен для тестирования JacksonFactory, это не ошибка.
Возможно, проблема в том, что я вызываю новый GoogleAccessProtectedResource (null), который должен вызываться с помощью oAuth-аутентификации?
package de.purespider.tasks;
import android.app.Activity;
import android.os.Bundle;
import com.google.api.client.extensions.android2.AndroidHttp;
import com.google.api.client.googleapis.auth.oauth2.draft10.GoogleAccessProtectedResource;
import com.google.api.client.googleapis.extensions.android2.auth.GoogleAccountManager;
import com.google.api.client.http.HttpResponse;
import com.google.api.client.http.HttpResponseException;
import com.google.api.client.http.HttpTransport;
import com.google.api.client.json.jackson.JacksonFactory;
import com.google.api.services.tasks.Tasks;
import com.google.api.services.tasks.model.Task;
import android.accounts.Account;
import android.accounts.AccountManager;
import android.accounts.AccountManagerCallback;
import android.accounts.AccountManagerFuture;
import android.app.AlertDialog;
import android.app.Dialog;
import android.app.ListActivity;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.SharedPreferences;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.ArrayAdapter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
public class TasksActivity extends Activity
{
private static final String TAG = "TasksSample";
// This must be the exact string, and is a special for alias OAuth 2 scope
// "https://www.googleapis.com/auth/tasks"
private static final String AUTH_TOKEN_TYPE = "Manage your tasks";
private static final String PREF = "MyPrefs";
private static final int DIALOG_ACCOUNTS = 0;
private static final int MENU_ACCOUNTS = 0;
public static final int REQUEST_AUTHENTICATE = 0;
private final HttpTransport transport = AndroidHttp.newCompatibleTransport();
Tasks service;
GoogleAccessProtectedResource accessProtectedResource = new GoogleAccessProtectedResource(null);
// TODO(yanivi): save auth token in preferences?
GoogleAccountManager accountManager;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
JacksonFactory jack = new JacksonFactory();
//service = new Tasks(transport, accessProtectedResource, new JacksonFactory());
//service.setKey(/* my auth key goes here */);
//service.setApplicationName("tasks");
accountManager = new GoogleAccountManager(this);
}
}
Я использую netbeans (без maven) и пока не модифицировал свой AndroidManifest.xml вручную.
Edit:
Библиотеки, которые я включаю через каталог libs проекта:
- Google-апи-клиент-1.4.1-beta.jar
- Google-API-клиент-расширения-1.4.1-beta.jar
- Google-API-клиент-расширения-android2-1.4.1-beta.jar
- Google-API-клиент-googleapis-1.4.1-beta.jar
- Google-API-клиент-googleapis-расширения-1.4.1-beta.jar
- Google-API-клиент-googleapis-расширения-android2-1.4.1-beta.jar
- google-api-services-tasks-v1-1.2.0-beta.jar gson-1.6.jar
- гуава-r09.jar
- HttpClient-4.0.3.jar
- ДЖЕКСОН-ядро-ASL-1.6.7.jar
Заранее спасибо за любую помощь.