Blame view
app/src/main/java/com/dinhcv/lifelogpedometer/activity/WelcomeActivity.java
6.13 KB
7f095a929
|
1 |
package com.dinhcv.lifelogpedometer.activity; |
6b038e443
|
2 |
import android.Manifest; |
7f095a929
|
3 4 5 |
import android.app.ProgressDialog; import android.content.DialogInterface; import android.content.Intent; |
6b038e443
|
6 |
import android.content.pm.PackageManager; |
7f095a929
|
7 |
import android.net.Uri; |
6b038e443
|
8 |
import android.os.Build; |
7f095a929
|
9 10 |
import android.os.Bundle; import android.os.Handler; |
6b038e443
|
11 12 |
import android.support.v4.app.ActivityCompat; import android.support.v4.content.ContextCompat; |
7f095a929
|
13 |
import android.support.v7.app.AlertDialog; |
6b038e443
|
14 |
import android.widget.Toast; |
7f095a929
|
15 16 17 18 |
import com.dinhcv.lifelogpedometer.R; import com.dinhcv.lifelogpedometer.interfaces.LLAPIManagerListener; import com.dinhcv.lifelogpedometer.model.Shareprefer.Setting; |
5520a4b27
|
19 |
import com.dinhcv.lifelogpedometer.portal.ApiServices; |
7f095a929
|
20 21 22 23 24 25 26 27 28 |
import com.dinhcv.lifelogpedometer.portal.LLAPIManager; import com.dinhcv.lifelogpedometer.utils.Debug; import org.json.JSONArray; import org.json.JSONObject; public class WelcomeActivity extends ActivityBase implements Runnable { private boolean isRefresh = false; |
6b038e443
|
29 |
private static final int PERMISSIONS_REQUEST = 999; |
7f095a929
|
30 31 32 33 |
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_welcome); |
6b038e443
|
34 |
checkPermission(); |
7f095a929
|
35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
} private void checkRefreshToken(){ int id = Setting.getUserIdSharepre(WelcomeActivity.this); Debug.normal("String id: "+ id); if (id != 0){ handleRefreshToken(id); }else { refeshDone(); } } private void handleRefreshToken(int id) { |
5520a4b27
|
49 |
ApiServices.refreshToken(WelcomeActivity.this, id, new LLAPIManagerListener() { |
7f095a929
|
50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 |
@Override public void onError(Error error) { Debug.error("Version JSON result: ERROR " + error); String err = getResources().getString(R.string.login_error); isRefresh = false; refeshDone(); } @Override public void onSuccess(String json) { Debug.warn("Version JSON result: " + json.toString()); isRefresh = true; refeshDone(); } @Override public void onSuccess(JSONObject object) { Debug.warn("Version JSON object result: Success"); isRefresh = true; refeshDone(); } }); } private void refeshDone(){ Handler handler = new Handler(); handler.postDelayed(WelcomeActivity.this, 2000); } private void notifyErr(String err){ AlertDialog.Builder alertDialog = new AlertDialog.Builder(WelcomeActivity.this); alertDialog.setMessage(err); alertDialog.setCancelable(false); alertDialog.setPositiveButton(R.string.ok, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { finish(); } }); AlertDialog alert = alertDialog.create(); alert.show(); } @Override public void run() { // go to main screen if ( isRefresh) { gotoActivity(PedometerActivity.class); } else { // Bundle bundle = new Bundle(); // bundle.putString(Const.URL, url); gotoActivity(LoginActivity.class); } finish(); } @Override protected void onResume() { super.onResume(); } |
6b038e443
|
110 111 112 113 114 115 |
private void checkPermission() { // Check all permission in android 6.0 if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { if ((ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) == PackageManager.PERMISSION_GRANTED) && (ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) |
9c431985f
|
116 |
== PackageManager.PERMISSION_GRANTED)&& (ContextCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE) |
6b038e443
|
117 118 119 120 121 122 123 124 |
== PackageManager.PERMISSION_GRANTED)) { checkRefreshToken(); } else { // Requset permisson of device if (ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest.permission .ACCESS_COARSE_LOCATION) && ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest |
9c431985f
|
125 |
.permission.ACCESS_FINE_LOCATION) && ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest |
6b038e443
|
126 127 128 |
.permission.ACCESS_FINE_LOCATION)) { ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.ACCESS_COARSE_LOCATION, |
9c431985f
|
129 |
Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.WRITE_EXTERNAL_STORAGE}, |
6b038e443
|
130 131 132 133 134 |
PERMISSIONS_REQUEST); } else { ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.ACCESS_COARSE_LOCATION, |
9c431985f
|
135 |
Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.WRITE_EXTERNAL_STORAGE}, |
6b038e443
|
136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 |
PERMISSIONS_REQUEST); } } } else { checkRefreshToken(); } } @Override public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) { super.onRequestPermissionsResult(requestCode, permissions, grantResults); if (requestCode == PERMISSIONS_REQUEST) { if (grantResults.length > 0) { if (grantResults[0] == PackageManager.PERMISSION_GRANTED && grantResults[1] == PackageManager.PERMISSION_GRANTED && grantResults[2] == PackageManager.PERMISSION_GRANTED) { checkRefreshToken(); return; } } else { Toast.makeText(this, "Permission was not granted ", Toast.LENGTH_SHORT).show(); finish(); } } else { super.onRequestPermissionsResult(requestCode, permissions, grantResults); } } |
7f095a929
|
166 |
} |