您的位置:首页 > 其它

应用内打开QQ,发送消息给指定联系人(临时会话),应用内加群

2016-10-19 13:13 711 查看
应用内打开QQ,发送消息给指定联系人(临时会话),应用内加群
在应用内部打开QQ并发送消息给指定联系人的需求还是挺常见的,在这里记录下打开与指定联系人的临时会话以及加入QQ群的方法。先上效果图:



准备工作:

1.首先手机或模拟器上要装有QQ,否则在模拟器上会报错,找不到指定Activity,(亲测)

2.加入QQ群首先要在QQ群的官方网站生成相应的key和id ,这里为了方便附上地址:   点击打开链接    选择加群组件,如图:



然后在左边选择要使用的群,在右边会自动生成相应的不同版本的代码,这里选择安卓:



然后就能得到加群的相应的代码,接下来在activity内处理:

布局文件太简单就不贴出来了,直接上代码:

package com.gechao.qqdemo;

import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}

public void chat(View view) {

String url = "mqqwpa://im/chat?chat_type=wpa&uin=228451878";//这里的228451878是自己指定的QQ号码,可以自己更换
startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(url)));
}

public void join(View view) {
joinQQGroup("VP75hw8sQW9XndPaAyGyExHYR8e_SJDn");//加入群
}

/****************
* 发起添加群流程。群号:交流群(439947897) 的 key 为: VP75hw8sQW9XndPaAyGyExHYR8e_SJDn
* 调用 joinQQGroup(VP75hw8sQW9XndPaAyGyExHYR8e_SJDn) 即可发起手Q客户端申请加群 交流群(439947897)
*
* @param key 由官网生成的key
* @return 返回true表示呼起手Q成功,返回fals表示呼起失败
******************/
public 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)
try {
startActivity(intent);
return true;
} catch (Exception e) {
// 未安装手Q或安装的版本不支持
return false;
}
}

}
然后分别处理成功失败的情况,这里就不做赘述。

最后附上腾讯开发者平台的相关资料、引导:点击打开链接
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: