zengjiebin пре 7 година
родитељ
комит
877afd3dfc

+ 24 - 0
app/src/main/java/com/sheep/gamegroup/util/QQUtil.java

@@ -8,6 +8,8 @@ import android.content.pm.PackageManager;
 import android.content.pm.ResolveInfo;
 import android.net.Uri;
 
+import com.sheep.jiuyan.samllsheep.SheepApp;
+
 import java.util.List;
 import java.util.Locale;
 
@@ -53,6 +55,28 @@ public class QQUtil {
         }
         return false;
     }
+    /****************
+     *
+     * 发起添加群流程。群号:小绵羊(855240873) 的 key 为: MQ028cMTzecocoJapge1v-0tLWWGZpFG
+     * 调用 joinQQGroup(MQ028cMTzecocoJapge1v-0tLWWGZpFG) 即可发起手Q客户端申请加群 小绵羊(855240873)
+     *
+     * @param key 由官网生成的key
+     * @return 返回true表示呼起手Q成功,返回fals表示呼起失败
+     ******************/
+    public static boolean joinQQGroup(String key) {
+        Intent intent = new Intent();
+        intent.setData(Uri.parse("mqqopensdkapi://bizAgent/qm/qr?url=http%3A%2F%2Fqm.qq.com%2Fcgi-bin%2Fqm%2Fqr%3Ffrom%3Dapp%26p%3Dandroid%26k%3D" + key));
+        // 此Flag可根据具体产品需要自定义,如设置,则在加群界面按返回,返回手Q主界面,不设置,按返回会返回到呼起产品界面    //intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
+        Activity activity = SheepApp.getInstance().getCurrentActivity();
+        try {
+            activity.startActivity(intent);
+            return true;
+        } catch (Exception e) {
+            // 未安装手Q或安装的版本不支持
+            return false;
+        }
+    }
+
     /**
      * 判断 Uri是否有效
      */

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

@@ -261,7 +261,7 @@ public class TestUtil {
      */
     public static void test(final Activity activity) {
         final String[] items = {"复制token", "添加token", "复制打点数据", "从jenkins下载小绵羊安装包", "测试表情包",
-                "跳转QQ",
+                "跳转QQ", "跳转QQ群",
                 "测试升级对话框","少数民族姓名", "开启皮肤", "不开启皮肤", "我的游戏", "优惠券弹窗", "填写收件地址弹窗",
                 "朗读文字", "游戏搜索", "测试插件","测试bitmap", "剪切视频", "我的关注", "足迹",
                 "测试联通卡", "测试联通卡2", "测试签名1", "测试签名2", "测试孔剑秋faq正式服",
@@ -352,6 +352,9 @@ public class TestUtil {
             case "跳转QQ2":
                 QQUtil.skip2(activity, "532588232");
                 break;
+            case "跳转QQ群":
+                QQUtil.joinQQGroup(DataUtil.getAsString("testQQQ", "MQ028cMTzecocoJapge1v-0tLWWGZpFG"));
+                break;
             case "跳转QQ":
                 QQUtil.skip3(activity, DataUtil.getAsString("testQQ", "532588232"));
                 break;
@@ -555,6 +558,12 @@ public class TestUtil {
                     if(msg.contains("@")) {
                         SpUtils.saveToken(activity, text.toString());
                         addUser(text.toString());
+                    } else if(msg.toLowerCase().startsWith("qqq")){
+                        String qqq = StringUtils.filterUnNumber(msg);
+                        ViewUtil.showMsgDialog(activity, new DialogConfig().setMsg("跳转提示").setMsg("是否跳转QQ群:" + qqq + "\n点击【保存】按钮,可以通过测试功能中的【复制token】复制token并跳转到该QQ群")
+                                .setMsgGravity(Gravity.START)
+                                .setBtnRightText("跳转").setBtnRightOnClickListener(view -> QQUtil.skip3(activity, qqq))
+                                .setBtnLeftText("保存QQ群").setBtnLeftOnClickListener(view -> DataUtil.putAsString("testQQQ", qqq)));
                     } else if(msg.toLowerCase().startsWith("qq")){
                         String qq = StringUtils.filterUnNumber(msg);
                         ViewUtil.showMsgDialog(activity, new DialogConfig().setMsg("跳转提示").setMsg("是否跳转QQ:" + qq + "\n点击【保存】按钮,可以通过测试功能中的【复制token】复制token并跳转到该QQ")
@@ -570,6 +579,10 @@ public class TestUtil {
                 if(!TextUtils.isEmpty(qq)){
                     QQUtil.skip3(activity, qq);
                 }
+                String qqq = DataUtil.getAsString("testQQQ", null);
+                if(!TextUtils.isEmpty(qqq)){
+                    QQUtil.skip3(activity, qqq);
+                }
                 break;
             case "复制IMEI":
                 StringUtils.CopyText(new DeviceUtils(activity).getIMEI());