浏览代码

添加桌面快捷方式后根据是否添加成功提示用户

zengjiebin 7 年之前
父节点
当前提交
f055347070

+ 33 - 28
app/src/main/java/com/sheep/gamegroup/util/SysAppUtil.java

@@ -853,8 +853,10 @@ public class SysAppUtil {
             PendingIntent successCallback = PendingIntent.getBroadcast(context, 0, pinnedShortcutCallbackIntent, 0);
 
             ShortcutManagerCompat.requestPinShortcut(context, pinShortcutInfo, successCallback.getIntentSender());
-            G.showToast("正在尝试添加桌面快捷方式");
-            return true;
+            boolean hasShortcut = SysAppUtil.hasShortcut(SheepApp.getInstance(), Config.YF_SHOP_NAME);
+            if(hasShortcut)
+                G.showToast("添加桌面快捷方式成功");
+            return hasShortcut;
         }
         return false;
     }
@@ -862,9 +864,6 @@ public class SysAppUtil {
     //添加有范商城快捷入口
     public static void addShortcutTest(Activity activity) {
         if(installShortCut(activity)){
-            if(Build.VERSION.SDK_INT >=  Build.VERSION_CODES.N_MR1){
-                showShortcutTip(activity);
-            }
         } else if(Build.VERSION.SDK_INT >=  Build.VERSION_CODES.O){
             SysAppUtil.addShortcutTest8(activity);
         } else if(Build.VERSION.SDK_INT >=  Build.VERSION_CODES.N_MR1){
@@ -907,30 +906,36 @@ public class SysAppUtil {
     }
 
     //展示提示框
-    private static void showShortcutTip(Activity activity) {
-        ViewUtil.showMsgDialog(activity, new DialogConfig().setTitle("已尝试添加有范商城到桌面").setMsg("若添加失败,请前往系统设置为小绵羊打开\"创建桌面快捷方式\"的权限")
-                .setBtnLeftText("重新添加").setBtnLeftOnClickListener(view -> CommonUtil.getInstance().addYouFanLauncher())
-                .setBtnRightText("前往设置").setBtnRightOnClickListener(view -> {
-                    try {
-                        startAppSettings(activity);
-                    } catch (NoSuchFieldException e) {
-                        e.printStackTrace();
-                        if(TestUtil.isDev())
-                            G.showToast(e);
-                    } catch (IllegalAccessException e) {
-                        e.printStackTrace();
-                        if(TestUtil.isDev())
-                            G.showToast(e);
-                    } catch (ActivityNotFoundException e){
-                        if(RomUtils.checkIsMiuiRom()){
-                            skipActivity(activity, "com.miui.securitycenter", "com.miui.permcenter.MainAcitivty", null, null);
+    public static void showShortcutTip(Activity activity) {
+        boolean hasShortcut = SysAppUtil.hasShortcut(SheepApp.getInstance(), Config.YF_SHOP_NAME);
+        if(hasShortcut) {
+            G.showToast("添加桌面快捷方式成功");
+        } else {
+//            G.showToast("正在尝试添加桌面快捷方式");
+            ViewUtil.showMsgDialog(activity, new DialogConfig().setTitle("已尝试添加有范商城到桌面").setMsg("若添加失败,请前往系统设置为小绵羊打开\"创建桌面快捷方式\"的权限")
+                    .setBtnLeftText("重新添加").setBtnLeftOnClickListener(view -> CommonUtil.getInstance().addYouFanLauncher())
+                    .setBtnRightText("前往设置").setBtnRightOnClickListener(view -> {
+                        try {
+                            startAppSettings(activity);
+                        } catch (NoSuchFieldException e) {
+                            e.printStackTrace();
+                            if (TestUtil.isDev())
+                                G.showToast(e);
+                        } catch (IllegalAccessException e) {
+                            e.printStackTrace();
+                            if (TestUtil.isDev())
+                                G.showToast(e);
+                        } catch (ActivityNotFoundException e) {
+                            if (RomUtils.checkIsMiuiRom()) {
+                                skipActivity(activity, "com.miui.securitycenter", "com.miui.permcenter.MainAcitivty", null, null);
+                            }
+                        } catch (Exception e) {
+                            e.printStackTrace();
+                            if (TestUtil.isDev())
+                                G.showToast(e);
                         }
-                    } catch (Exception e){
-                        e.printStackTrace();
-                        if(TestUtil.isDev())
-                            G.showToast(e);
-                    }
-                }).setBtnRightNotDissDialog(true));
+                    }).setBtnRightNotDissDialog(true));
+        }
     }
 
     class CallBackReceiver extends BroadcastReceiver {

+ 4 - 1
app/src/main/java/com/sheep/gamegroup/util/TestUtil.java

@@ -265,7 +265,7 @@ public class TestUtil {
      */
     public static void test(final Activity activity) {
         final String[] items = {"复制token", "添加token", "复制打点数据", "从jenkins下载小绵羊安装包", "测试表情包",
-                "测试跳转","support包尝试创建桌面快捷方式","判断Launcher是否支持创建桌面快捷方式","判断是否添加快捷入口","判断是否添加商城快捷入口",
+                "测试跳转","support包尝试创建桌面快捷方式","判断Launcher是否支持创建桌面快捷方式","判断是否添加快捷入口","判断是否添加商城快捷入口","显示快捷方式设置对话框",
                 "跳转QQ", "跳转QQ群", "尝试获取通讯录", "测试有范","测试有范6.0","测试有范7.0","测试有范8.0", "测试设备信息", "下载视频测试", "爱奇艺VIP会员", "分享我的签名的小绵羊apk", "分享当前小绵羊apk",
                 "测试升级对话框", "少数民族姓名", "开启皮肤", "不开启皮肤", "我的游戏", "优惠券弹窗", "填写收件地址弹窗",
                 "朗读文字", "游戏搜索", "测试插件", "测试bitmap", "剪切视频", "我的关注", "足迹",
@@ -308,6 +308,9 @@ public class TestUtil {
                 boolean hasShortcut = SysAppUtil.hasShortcut(SheepApp.getInstance(), Config.YF_SHOP_NAME);
                 G.showToast((hasShortcut ? "已经": "还未") + Config.YF_SHOP_NAME + "桌面快捷入口");
                 break;
+            case "显示快捷方式设置对话框":
+                SysAppUtil.showShortcutTip(activity);
+                break;
             case "尝试获取通讯录":
                 ContactUtil.getAllContactList(G::showToast);
                 break;