import android.accounts.AccountManager;
import android.accounts.AuthenticatorException;
import android.accounts.OperationCanceledException;
-import android.annotation.SuppressLint;
import android.annotation.TargetApi;
import android.app.AlertDialog;
import android.app.Dialog;
import com.owncloud.android.BuildConfig;
import com.owncloud.android.MainApp;
import com.owncloud.android.R;
+import com.owncloud.android.authentication.PinCheck;
import com.owncloud.android.datamodel.OCFile;
import com.owncloud.android.files.services.FileDownloader;
import com.owncloud.android.files.services.FileDownloader.FileDownloaderBinder;
private String DIALOG_UNTRUSTED_CERT;
private OCFile mWaitingToSend;
+
+ private Boolean mUnlocked = false;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); // this calls onAccountChanged() when ownCloud Account is valid
- checkIfRequestPin(savedInstanceState);
+
+ if (PinCheck.checkIfPinEntry()){
+ Intent i = new Intent(MainApp.getAppContext(), PinCodeActivity.class);
+ i.putExtra(PinCodeActivity.EXTRA_ACTIVITY, "FileDisplayActivity");
+ startActivity(i);
+ }
- /// grant that FileObserverService is watching favourite files
+ /// grant that FileObserverService is watching favorite files
if (savedInstanceState == null) {
Intent initObserversIntent = FileObserverService.makeInitIntent(this);
startService(initObserversIntent);
Log_OC.d(TAG, "onCreate() end");
}
- private void checkIfRequestPin(Bundle savedInstanceState){
- // PIN CODE request ; best location is to decide, let's try this first
- if (getIntent().getAction() != null && getIntent().getAction().equals(Intent.ACTION_MAIN) && savedInstanceState == null) {
- requestPinCode();
- } else if (getIntent().getAction() == null && savedInstanceState == null) {
- requestPinCode();
- }
- }
-
@Override
protected void onStart() {
super.onStart();
@TargetApi(Build.VERSION_CODES.JELLY_BEAN)
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
-
- Log_OC.d(TAG, "requestCode: " + requestCode);
- if (requestCode == PinCodeActivity.EXTRA_PIN_CORRECT){
- Log_OC.d(TAG, "Extra pin: " + resultCode);
- if (resultCode == RESULT_OK) {
- resume();
- }
- }
if (requestCode == ACTION_SELECT_CONTENT_FROM_APPS && (resultCode == RESULT_OK || resultCode == UploadFilesActivity.RESULT_OK_AND_MOVE)) {
//getClipData is only supported on api level 16+, Jelly Bean
super.onResume();
Log_OC.e(TAG, "onResume() start");
- checkIfRequestPin(null);
- }
+ if (PinCheck.checkIfPinEntry()){
+ Intent i = new Intent(MainApp.getAppContext(), PinCodeActivity.class);
+ i.putExtra(PinCodeActivity.EXTRA_ACTIVITY, "FileDisplayActivity");
+ startActivity(i);
+ }
- private void resume(){
// refresh list of files
refreshListOfFilesFragment();
mDownloadFinishReceiver = null;
}
-
+ PinCheck.setUnlockTimestamp();
Log_OC.d(TAG, "onPause() end");
super.onPause();
}
}
};
-
-
- /**
- * Launch an intent to request the PIN code to the user before letting him use the app
- */
- private void requestPinCode() {
- boolean pinStart = false;
- SharedPreferences appPrefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
- pinStart = appPrefs.getBoolean("set_pincode", false);
- if (pinStart) {
- Intent i = new Intent(getApplicationContext(), PinCodeActivity.class);
- // i.putExtra(PinCodeActivity.EXTRA_ACTIVITY, "FileDisplayActivity");
- startActivityForResult(i, PinCodeActivity.EXTRA_PIN_CORRECT);
- }
- }
-
-
@Override
public void onSavedCertificate() {
startSyncFolderOperation(getCurrentDir(), false);