Commit 202f556b authored by fallenstardust's avatar fallenstardust

更改权限申请提示位置

parent 6d2357eb
......@@ -97,16 +97,13 @@ public class BaseActivity extends AppCompatActivity {
@Override
protected void onResume() {
super.onResume();
if (Build.VERSION.SDK_INT<Build.VERSION_CODES.M|| !startPermissionsActivity()){
onActivityResult(REQUEST_PERMISSIONS,PermissionsActivity.PERMISSIONS_GRANTED,null);
}
}
public Resources getResources() {
Resources res = super.getResources();
Configuration config=new Configuration();
Configuration config = new Configuration();
config.setToDefaults();
res.updateConfiguration(config,res.getDisplayMetrics());
res.updateConfiguration(config, res.getDisplayMetrics());
return res;
}
......@@ -311,7 +308,7 @@ public class BaseActivity extends AppCompatActivity {
toast.show();
}
public static void showLinkArrows(Card cardInfo, View view){
public static void showLinkArrows(Card cardInfo, View view) {
String lk = Integer.toBinaryString(cardInfo.Defense);
String Linekey = String.format("%09d", Integer.parseInt(lk));
for (int i = 0; i < ids.length; i++) {
......
......@@ -6,6 +6,7 @@ import android.content.DialogInterface;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
import android.provider.Settings;
......@@ -15,6 +16,8 @@ import androidx.appcompat.app.AppCompatActivity;
import androidx.core.app.ActivityCompat;
import androidx.core.content.ContextCompat;
import com.bumptech.glide.GenericTranscodeRequest;
import java.util.ArrayList;
import java.util.List;
......@@ -66,6 +69,7 @@ public class PermissionsActivity extends AppCompatActivity {
dialog.setLeftButtonListener((dlg, i) -> {
isRequireCheck = true;
doPermission();
jumpToRequestInstallPackage();
dialog.dismiss();
});
dialog.show();
......@@ -184,6 +188,12 @@ public class PermissionsActivity extends AppCompatActivity {
intent.setData(Uri.parse(PACKAGE_URL_SCHEME + getPackageName()));
startActivity(intent);
}
public void jumpToRequestInstallPackage() {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O && !this.getPackageManager().canRequestPackageInstalls()) {
getApplicationContext().startActivity(new Intent(Settings.ACTION_MANAGE_UNKNOWN_APP_SOURCES, Uri.parse("package" + this.getPackageName())));
}
}
}
/**
......
......@@ -26,6 +26,7 @@ import cn.garymb.ygomobile.YGOMobileActivity;
import cn.garymb.ygomobile.YGOStarter;
import cn.garymb.ygomobile.core.IrrlichtBridge;
import cn.garymb.ygomobile.lite.R;
import cn.garymb.ygomobile.ui.activities.PermissionsActivity;
import cn.garymb.ygomobile.ui.activities.WebActivity;
import cn.garymb.ygomobile.ui.plus.DialogPlus;
import cn.garymb.ygomobile.ui.plus.VUiKit;
......@@ -158,12 +159,16 @@ public class MainActivity extends HomeActivity {
});
dlgpls.setRightButtonText(R.string.deck_restore);
dlgpls.setRightButtonListener((dlg, i) -> {
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M || !startPermissionsActivity()) {
onActivityResult(REQUEST_PERMISSIONS, PermissionsActivity.PERMISSIONS_GRANTED, null);
}
try {
FileUtils.copyDir(ORI_DECK, AppsSettings.get().getDeckDir(), false);
} catch (Throwable e) {
Toast.makeText(MainActivity.this, e + "", Toast.LENGTH_SHORT).show();
}
Toast.makeText(MainActivity.this, R.string.done, Toast.LENGTH_SHORT).show();
dlgpls.dismiss();
});
dlgpls.show();
......
package cn.garymb.ygomobile.ui.preference;
import android.content.Intent;
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
import android.provider.Settings;
import androidx.annotation.Nullable;
import androidx.appcompat.widget.Toolbar;
import cn.garymb.ygomobile.lite.R;
import cn.garymb.ygomobile.ui.activities.BaseActivity;
import cn.garymb.ygomobile.ui.activities.PermissionsActivity;
import cn.garymb.ygomobile.ui.preference.fragments.SettingFragment;
import static cn.garymb.ygomobile.ui.activities.PermissionsActivity.PERMISSIONS_GRANTED;
public class SettingsActivity extends BaseActivity {
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
......@@ -19,4 +26,14 @@ public class SettingsActivity extends BaseActivity {
enableBackHome();
getFragmentManager().beginTransaction().replace(R.id.fragment, new SettingFragment()).commit();
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == REQUEST_PERMISSIONS && resultCode == PERMISSIONS_GRANTED) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O && !getContext().getPackageManager().canRequestPackageInstalls()) {
getContext().startActivity(new Intent(Settings.ACTION_MANAGE_UNKNOWN_APP_SOURCES, Uri.parse("package" + getContext().getPackageName())));
}
}
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment