专栏首页Android小知识简单实现微信分享(不集成SDK)

简单实现微信分享(不集成SDK)

微信分享

  • 说到微信分享,你的第一想法是什么?
    • 集成三方库(ShareSdk、友盟分享)
    • 集成微信官方的Sdk

NO NO NO

  • 如果仅仅是分享给朋友完全不需要这么费事,有更简单更减少包体积的方法,那就是使用Android系统自带Intent
  • 原理:我们可以解压apk,你将会在微信的AndroidManifest.xml文件中,看到微信可以接受android.intent.action.SEND的Intent,mimeType可以是图片"image/*"、视频“video/*”、音频"audio/*"、文本"text/*"、各种二进制文件"application/*"
  • 有了上面的intent,接下来介绍一下ComponentName
  • 我们可以通过new ComponentName("包名","类名");来创建ComponentName
  • 最后通过Intent.setComponent(ComponentName)来启动其他应用的Activity

最后上代码

//微信的包名
 public static final String PACKAGE_WECHAT = "com.tencent.mm";
    // 判断是否安装指定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;
    }

    /**
     * 直接分享文本到微信好友
     *
     * @param context 上下文
     */
    public static void shareText2WechatFriend(Context context, String content) {
        if (PlatformUtil.isInstallApp(context, PlatformUtil.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("Kdescription", !TextUtils.isEmpty(content) ? content : "");
            intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
            context.startActivity(intent);
        } else {
            Toast.makeText(context, "您需要安装微信客户端", Toast.LENGTH_LONG).show();
        }
    }

好啦,分享到QQ、微博等等平台也可以参考这种方法哦,完全没必要费时间申请集成三方SDK!

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • iOS微信之简单文本分享(集成官方SDK)

    前期准备工作:可以参考这篇博文http://www.jianshu.com/p/839dc30f2250 iOS版本只需要提供Bundle Id即可

    专注APP开发
  • ThinkPHP3.2.3集成微信分享JS-SDK实践

    在没有集成微信分享js-sdk前是这样的:没有摘要,缩略图任意抓取正文图片

    思梦php
  • Android微信之简单文本分享(集成官方SDK-Eclipse)

    提交需要准备:应用名称,应用简介,应用图片(28*28,108*108),应用官网

    专注APP开发
  • Android微信之简单文本分享(集成官方SDK-Android Studio)

    1.帐号申请 https://open.weixin.qq.com/ 首先登录微信开放平台,注册一个帐号 2.提交APP审核 为什么必须提交app审核呢...

    专注APP开发
  • 微信JS-SDK分享功能的.Net实现

    为了方便开发者实现微信内的网页(基于微信浏览器访问的网页)功能,比如拍照、选图、语音、位置等手机系统的能力,并方便开发者直接使用微信分享、扫一扫等微信特有的能力...

    石瞳禅
  • 分享几款移动端开发非常需要又好用的开放免费SDK

    随着移动开发的火爆,很多开发的模块被很多公司拿出去进行了独立开发,并进行运营,现在的开发者只要集成他们的SDK就能完成相应的功能,非常方 便,让开发者开发的速...

    非著名程序员
  • React Native 集成分享第三方登录功能分享第三方登录模块开发(iOS)

    在我们常用的App中经常会看到分享与第三方登录的功能,可以说分享与第三方登录已经成为了各大APP的必备功能。对于产品运行与推广来说,分享与第三方登录不仅能加强用...

    CrazyCodeBoy
  • android系统分享的自定义功能的示例代码

    分享功能是app中特别常见的功能,国内的app基本都支持分享到微信 QQ等主流的社交应用。至于分享功能的实现大多是使用第三方的share sdk一步到位,或者分...

    砸漏
  • Android使用友盟集成QQ、微信、微博等第三方分享与登录方法详解

    最近项目需要加入第三方分享和登录功能,之前其他项目的第三方分享和登录一直都使用ShareSDK实现的。为了统一使用友盟的全家桶,所以三方分享和登录也就选择了友盟...

    砸漏
  • 小程序webview应用实践

    大家好,我是转转开放业务部前端负责人张所勇,今天主要来跟大家分享小程序 webview 方面的问题,但我并不会讲小程序的 webview 原理,而我主要想讲的是...

    Fundebug
  • 【开源访谈】对接 QQ 机器人平台,对接共同成长的开源社区(开源中国采访)

    本文是Newbe接受”开源中国”采访内容,原文链接:https://www.oschina.net/question/3820517_2283450

    newbe36524
  • 项目分布式部署那些事(1):ONS消息队列、基于Redis的Session共享,开源共享

    因业务发展需要现在的系统不足以支撑现在的用户量,于是我们在一周之前着手项目的性能优化与分布式部署的相关动作。 概况 现在的系统是基于RabbitHub(一套开源...

    逸鹏
  • iOS-微信支付(二)高潮

    用户1890628
  • 微信支付V3实现Payment Spring Boot 1.0.4.RELEASE发布,支持商家券

    Payment Spring Boot 是微信支付V3的Java实现,仅仅依赖Spring内置的一些类库。配置简单方便,可以让开发者快速为Spring Boot...

    码农小胖哥
  • Payment Spring Boot 1.0.2.RELEASE 发布,接入微信支付分、先享卡功能

    Payment Spring Boot 是微信支付V3的Java实现,仅仅依赖Spring内置的一些类库。配置简单方便,可以让开发者快速为Spring Boot...

    码农小胖哥
  • 【一周简报】支付聚合SDK公司Ping++获得千万美元B轮融资,宽带资本领投

    编辑导语 智选SDK一周资讯大事记,将会为您呈现过去一周最受欢迎的SDK资讯、投融资、企业活动、人物访谈和创业故事等信息,让您在最短的时间内了解最火 BeeCl...

    BestSDK
  • 经验分享 | 极光 iOS 平台上 SDK 架构演进及性能优化

    IT大咖说
  • 移动互联网创业:如何更好使用SDK

    说起移动互联网创业,很多人会想到应用,想到o2o,想到移动互联网金融,移动支付,智能硬件等等,很多东西,这一切,基本上都离不开App,比如做移动 应用,要做Ap...

    BestSDK
  • 个人号大白开发分享(itchat+图灵api)

    七夜安全博客

扫码关注云+社区

领取腾讯云代金券