Dans mon application, j'utilise DropBox SDK pour Android. Lorsque j'essaie d'enregistrer des données dans la base de données SharedPreference ou SQLite dans la méthode OnResunme, j'ai reçu une boîte de dialogue d'alerte de sécurité "Une autre application sur votre téléphone peut essayer de se comporter comme l'application l'utilise actuellement". Ce que je fais mal.Andrioid DropBox question de connexion
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
logFragView = inflater.inflate(R.layout.fragemnt_login, container,
false);
helper = new UNLDBHelper(getActivity());
AppKeyPair appKeys = new AppKeyPair(APP_KEY, APP_SECRET);
AndroidAuthSession session = new AndroidAuthSession(appKeys);
mDBApi = new DropboxAPI<AndroidAuthSession>(session);
prefs = getActivity().getSharedPreferences(UNLConsts.UNL_PREFS,
Context.MODE_PRIVATE);
// String key = prefs.getString(PREFS_KEY, null);
// String secret = prefs.getString(PREFS_SECRET, null);
session = new AndroidAuthSession(appKeys);
mDBApi = new DropboxAPI<AndroidAuthSession>(session);
dbLoginBtn = (ImageView) logFragView.findViewById(R.id.dBoxLogBtn);
dbLoginBtn.setOnClickListener(this);
return logFragView;
}
@Override
public void onClick(View v) {
mDBApi.getSession().startOAuth2Authentication(getActivity());
}
@Override
public void onResume() {
super.onResume();
if (mDBApi.getSession().authenticationSuccessful()) {
try {
mDBApi.getSession().finishAuthentication();
AndroidAuthSession session = mDBApi.getSession();
if (session.authenticationSuccessful()) {
try {
session.finishAuthentication();
ContentValues cv = new ContentValues();
AccessTokenPair tokens = session.getAccessTokenPair();
cv.put("drBkey", tokens.key);
cv.put("drBsecret", tokens.secret);
helper.getWritableDatabase().insert("DB_AUTH_DATA",
null, cv);
} catch (IllegalStateException e) {
}
}