Completata implementazione dei permessi.
Implementata visibility tramite BindableBoolean.
This commit is contained in:
@@ -7,10 +7,15 @@ import android.os.Bundle;
|
||||
import android.text.SpannableString;
|
||||
import android.widget.TextView;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import androidx.appcompat.app.AppCompatActivity;
|
||||
import butterknife.BindView;
|
||||
import butterknife.ButterKnife;
|
||||
import it.integry.integrywmsnative.core.REST.watcher.ServerStatusChecker;
|
||||
import it.integry.integrywmsnative.core.expansion.RunnableArgss;
|
||||
import it.integry.integrywmsnative.core.expansion.RunnableArgsss;
|
||||
import it.integry.integrywmsnative.core.settings.SettingsManager;
|
||||
import it.integry.integrywmsnative.core.utility.PermissionsHelper;
|
||||
import it.integry.integrywmsnative.gest.login.LoginActivity;
|
||||
@@ -21,6 +26,8 @@ public class SplashActivity extends AppCompatActivity {
|
||||
@BindView(R.id.app_version_textview)
|
||||
TextView appVersionTextView;
|
||||
|
||||
private RunnableArgsss<Integer, String[], List<Integer>> onRequestPermissionResult;
|
||||
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
@@ -30,8 +37,14 @@ public class SplashActivity extends AppCompatActivity {
|
||||
|
||||
initAppVersion();
|
||||
|
||||
initPermissions(this::init);
|
||||
|
||||
|
||||
}
|
||||
|
||||
private void initPermissions(Runnable onComplete) {
|
||||
PermissionsHelper.askPermissions(this, () -> {
|
||||
init();
|
||||
onComplete.run();
|
||||
}, permanentlyDenied -> {
|
||||
if(permanentlyDenied) {
|
||||
DialogSimpleMessageHelper.makeErrorDialog(this,
|
||||
@@ -39,14 +52,9 @@ public class SplashActivity extends AppCompatActivity {
|
||||
this.finish();
|
||||
}).show();
|
||||
} else {
|
||||
DialogSimpleMessageHelper.makeErrorDialog(this,
|
||||
new SpannableString(getText(R.string.permissions_denied)), null, () -> {
|
||||
this.finish();
|
||||
}).show();
|
||||
initPermissions(onComplete);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -72,7 +80,7 @@ public class SplashActivity extends AppCompatActivity {
|
||||
|
||||
SettingsManager.reloadDBVariables(onComplete, ex -> {
|
||||
DialogSimpleMessageHelper.makeErrorDialog(this,
|
||||
new SpannableString(ex.getMessage()), null, null).show();
|
||||
new SpannableString(ex.getMessage()), null, this::finish).show();
|
||||
}
|
||||
);
|
||||
}
|
||||
@@ -80,6 +88,25 @@ public class SplashActivity extends AppCompatActivity {
|
||||
|
||||
|
||||
|
||||
public void setOnRequestPermissionsResult(RunnableArgsss<Integer, String[], List<Integer>> onRequestPermissionResult) {
|
||||
this.onRequestPermissionResult = onRequestPermissionResult;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void onRequestPermissionsResult(int requestCode, String permissions[], int[] grantResults) {
|
||||
if(this.onRequestPermissionResult != null) {
|
||||
List<Integer> grantResultsList = new ArrayList<>();
|
||||
for(int i = 0; i < grantResults.length; i++) {
|
||||
grantResultsList.add(grantResults[i]);
|
||||
}
|
||||
|
||||
this.onRequestPermissionResult.run(requestCode, permissions, grantResultsList);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
private void startLoginActivity(){
|
||||
|
||||
Reference in New Issue
Block a user