package safeluck.drive.evaluation;
|
|
|
import android.Manifest;
|
import android.app.AlertDialog;
|
|
import android.content.DialogInterface;
|
import android.os.Bundle;
|
|
import android.util.Log;
|
import android.widget.Toast;
|
|
|
import androidx.annotation.NonNull;
|
import androidx.annotation.Nullable;
|
import androidx.lifecycle.Observer;
|
import androidx.lifecycle.ViewModelProviders;
|
|
import me.yokeyword.fragmentation.SupportActivity;
|
import safeluck.drive.evaluation.fragment.HomeFragment;
|
import com.anyun.exam.lib.MyLog;
|
import safeluck.drive.evaluation.util.PermissionManager;
|
import safeluck.drive.evaluation.viewmodels.MainViewModel;
|
|
public class MainActivity extends SupportActivity {
|
|
private static final int PERMISSIONS_REQUEST_CODE = 1001;
|
private String TAG = MainActivity.class.getCanonicalName();
|
|
private PermissionManager mPermissionsManager ;
|
String[] PERMISSIONS = new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE,Manifest.permission.CAMERA};
|
|
@Override
|
protected void onCreate(Bundle savedInstanceState) {
|
super.onCreate(savedInstanceState);
|
//全屏
|
|
setContentView(R.layout.activity_main);
|
|
mPermissionsManager = new PermissionManager(this) {
|
@Override
|
public void authorized(int requestCode) {
|
|
}
|
|
@Override
|
public void noAuthorization(int requestCode, String[] lackPermissions) {
|
AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
|
builder.setTitle("提示");
|
builder.setMessage("缺少"+lackPermissions+"权限");
|
builder.setPositiveButton("设置权限", new DialogInterface.OnClickListener() {
|
@Override
|
public void onClick(DialogInterface dialog, int which) {
|
PermissionManager.startAppSettings(getApplicationContext());
|
}
|
});
|
builder.create().show();
|
}
|
|
@Override
|
public void ignore() {
|
|
}
|
};
|
|
|
|
|
MyLog.i(TAG,"onCreate");
|
MainViewModel mainViewModel = ViewModelProviders.of(this).get(MainViewModel.class);
|
mainViewModel.getJson().observe(this, new Observer<String>() {
|
@Override
|
public void onChanged(@Nullable String json) {
|
Toast.makeText(MainActivity.this, json, Toast.LENGTH_SHORT).show();
|
MyLog.i(TAG,"json=========="+json+" ThreadName:"+Thread.currentThread().getName());
|
|
}
|
});
|
|
//加载根Fragment
|
if (findFragment(HomeFragment.class) == null){
|
loadRootFragment(R.id.fl_container,HomeFragment.newInstance());
|
}
|
}
|
|
@Override
|
protected void onDestroy() {
|
super.onDestroy();
|
Log.i(TAG, "onDestroy: ");
|
}
|
|
@Override
|
protected void onResume() {
|
super.onResume();
|
mPermissionsManager.checkPermissions(PERMISSIONS_REQUEST_CODE,PERMISSIONS);
|
}
|
|
@Override
|
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
|
super.onRequestPermissionsResult(requestCode, permissions, grantResults);
|
mPermissionsManager.recheckPermissions(PERMISSIONS_REQUEST_CODE,permissions,grantResults);
|
}
|
}
|