请问,做Android微信分享和QQ分享图片功能必须要申请APPID吗,听说IOS不用,有没有知道详情的,解释一下,谢谢

问题点:
1. 做Android微信分享和QQ分享图片功能是不是必须要申请APPID,有没有不用APPID的方法?
2. 从官网看到IOS和Android都需要APPID,但朋友说IOS可以不用,有没有知道原因的,解释一下。

3个回答

你朋友忽悠你的,按照官网上来做

guangcaiwudong
Kevin.Y.K 回复zkw0302: 你朋友所谓的实现图片分享,是IOS自带的图片发送给好友,根本就不用实现。分享到朋友圈和自定义内容就必须要按照官方文档来
大约 2 个月之前 回复
zkw0302
zkw0302 这个不是忽悠,他们确实实现了,不知道怎么弄的,没看过界面,可能是用的苹果系统自带的那个吧
大约 2 个月之前 回复

给你推荐一个去百度搜索mob这个平台的分享和登录集成简单 使用也很简单 appid 是都需要的

zkw0302
zkw0302 谢谢这位仁兄贴的代码,知道这个东西,申请需要实名认证,麻烦
大约 2 个月之前 回复

public class ShareUtil {

public static final String PACKAGE_WECHAT = "com.tencent.mm";
public static final String PACKAGE_MOBILE_QQ = "com.tencent.mobileqq";
public static final String PACKAGE_QZONE = "com.qzone";
public static final String PACKAGE_SINA = "com.sina.weibo";
public static final String AUTHORITY = "com.ume.browser.fileprovider";
private static String sharePicName = "share_pic.jpg";
private static String sharePicPath = Environment.getExternalStorageDirectory().getAbsolutePath()+ File.separator+"UmeBrowser"+File.separator+"sharepic"+File.separator;

// 判断是否安装指定app
public static boolean isInstallApp(Context context, String app_package){
    final PackageManager packageManager = context.getPackageManager();
    List<PackageInfo> pInfo = packageManager.getInstalledPackages(0);
    if (pInfo != null) {
        for (int i = 0; i < pInfo.size(); i++) {
            String pn = pInfo.get(i).packageName;
            if (app_package.equals(pn)) {
                return true;
            }
        }
    }
    return false;
}

/**
 * 直接分享纯文本内容至QQ好友
 * @param mContext
 * @param content
 */
public static void shareQQ(Context mContext, String content) {
    if (isInstallApp(mContext,PACKAGE_MOBILE_QQ)) {
        Intent intent = new Intent("android.intent.action.SEND");
        intent.setType("text/plain");
        intent.putExtra(Intent.EXTRA_SUBJECT, "分享");
        intent.putExtra(Intent.EXTRA_TEXT, content);
        intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        intent.setComponent(new ComponentName("com.tencent.mobileqq", "com.tencent.mobileqq.activity.JumpActivity"));
        mContext.startActivity(intent);
    } else {
        Toast.makeText(mContext, "您需要安装QQ客户端", Toast.LENGTH_LONG).show();
    }
}

/**
 * 分享图片给QQ好友
 *
 * @param bitmap
 */
public void shareImageToQQ(Context mContext, Bitmap bitmap) {
    if (isInstallApp(mContext,PACKAGE_MOBILE_QQ)) {
        try {
            Uri uriToImage = Uri.parse(MediaStore.Images.Media.insertImage(
                    mContext.getContentResolver(), bitmap, null, null));
            Intent shareIntent = new Intent();
            shareIntent.setAction(Intent.ACTION_SEND);
            shareIntent.putExtra(Intent.EXTRA_STREAM, uriToImage);
            shareIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
            shareIntent.setType("image/*");
            // 遍历所有支持发送图片的应用。找到需要的应用
            ComponentName componentName = new ComponentName("com.tencent.mobileqq", "com.tencent.mobileqq.activity.JumpActivity");

            shareIntent.setComponent(componentName);
            // mContext.startActivity(shareIntent);
            mContext.startActivity(Intent.createChooser(shareIntent, "Share"));
        } catch (Exception e) {

// ContextUtil.getInstance().showToastMsg("分享图片到**失败");
}
}
}

/**
 * 直接分享图片到微信好友
 * @param context
 * @param picFile
 */
public static void shareWechatFriend(Context context,String content ,File picFile){
    if (isInstallApp(context,PACKAGE_WECHAT)){
        Intent intent = new Intent();
        ComponentName cop = new ComponentName("com.tencent.mm","com.tencent.mm.ui.tools.ShareImgUI");
        intent.setComponent(cop);
        intent.setAction(Intent.ACTION_SEND);
        intent.setType("image/*");
        if (picFile != null) {
            if (picFile.isFile() && picFile.exists()) {
                Uri uri;
                if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
                    uri = FileProvider.getUriForFile(context, AUTHORITY, picFile);
                } else {
                    uri = Uri.fromFile(picFile);
                }
                intent.putExtra(Intent.EXTRA_STREAM, uri);

// intent.putParcelableArrayListExtra(Intent.EXTRA_STREAM, Uri);
}
}
// intent.putExtra("Kdescription", !TextUtils.isEmpty(content) ? content : "");
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
// context.startActivity(intent);
context.startActivity(Intent.createChooser(intent, "Share"));
}else{
Toast.makeText(context, "您需要安装微信客户端", Toast.LENGTH_LONG).show();
}
}

/**
 * 直接分享文本到微信好友
 *
 * @param context 上下文
 */
public static void shareWechatFriend(Context context, String content) {
    if (isInstallApp(context,PACKAGE_WECHAT)) {
        Intent intent = new Intent();
        ComponentName cop = new ComponentName("com.tencent.mm", "com.tencent.mm.ui.tools.ShareImgUI");
        intent.setComponent(cop);
        intent.setAction(Intent.ACTION_SEND);
        intent.putExtra("android.intent.extra.TEXT", content);

// intent.putExtra("sms_body", content);
intent.putExtra("Kdescription", !TextUtils.isEmpty(content) ? content : "");
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(intent);
} else {
Toast.makeText(context, "您需要安装微信客户端", Toast.LENGTH_LONG).show();
}
}
}


zkw0302
zkw0302 谢谢这位仁兄贴的代码
大约 2 个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问

相似问题

1
微信分享分享图标显示不出来,请教下各位是怎么回事?
0
cordova结合Vue 项目中 android微信分享第一次成功后返回无法再进行第二次分享
1
微信分享后地址会自动添加from=timeline或from=singlemessage导致分享的页面无法打开!
0
小米手机微信分享的灵异事件,求解密!
1
微信中打开的页面,分享功能列表中没有分享到企业微信的功能
1
微信公众号网页实现分享到朋友圈
2
请问移动端H5如何实现分享页面功能?(如:微信,朋友圈,微博,QQ等主流软件)
2
原生微信小程序的图片上边怎样添加一个按钮
2
请问不在微信的开发者平台申请APPID,能否实现APP分享到朋友圈时点击图片跳转到外部链接功能。
1
微信分享的link没有作用,分享的能是当前页面
3
调用微信分享接口,还没有点击分享,一进入页面就提示分享成功
1
微信小程序支付功能如何测试
3
微信 隐藏分享按钮出现permission denied
0
类似 微信公众号的那种编辑器做文章的 怎么做?
0
jwplayer整合微信公众号
1
file在QQ,微信,手机浏览器,谷歌浏览器,ios下都能打开上传文件但是android就无法使用是怎么回事?
0
微信静默授权也能获取用户信息
1
java中什么方法可以在微信服务器上面把图片下载到本地服务器并保存(知道微信服务器上面图片的链接)
1
HTML5,js检测微信和Safari浏览器,然后改变显示的元素?
0
微信小程序怎么跳转到系统浏览器?