【Android 分享】ShareSDK微信分享详解

转载 2016年08月29日 02:41:17

目前市面上大大小小的软件,几乎都支持分享的功能,前几天在做的项目中也有此功能,使用的ShareSDK来实现的微信分享功能,下面就跟着我来一步步实现微信分享吧!

ShareSDK介绍:ShareSDK官网,Mob移动开发者服务平台,为全球移动开发者提供社会化分享SDK、手游视频录像SDK、免费手机短信验证码SDK,BigApp掌上社区等服务。

1.在ShareSDK注册个账户,进入创建应用的界面:

这里写图片描述

点击创建应用按钮

2.输入自己的应用名称,选择开发平台(以Android为例)

这里写图片描述

3.点击确定,进入后台管理界面,此时已经生成了该应用的App Key和App Secret,这是后面分享必须的。

这里写图片描述

注:此时在ShareSDK配置已经完成,下面需要到各自分享的平台去申请对应的AppId和AppSecret。

4.进入微信开放平台,点击顶部的管理中心按钮

这里写图片描述

5.填写应用信息

这里写图片描述 
这里写图片描述

6.下一步,接着填写信息

这里写图片描述 
这里写图片描述


这里详细介绍一下签名,此处填写的签名必须和应用发布时的签名保持一致才可以分享,为了保持一致,此处的签名可以这样来产生:

  • 使用命令来生成签名文件,命令如下:keytool -genkey -alias demo.keystore -keyalg RSA -validity 20000 -keystore demo.keystore,cmd命令行直接执行就可以了,至于输入的内容,记住密匙库口令,也就是密码,重复输入两次,输入的过程不会显示!

这里写图片描述

  • 此时在你执行命令的目录就会生成一个签名文件demo.keystore

这里写图片描述

  • 右键工程–Export 
    这里写图片描述

  • next—找到你的签名文件—输入生成签名文件时的密码

这里写图片描述 
这里写图片描述 
这里写图片描述 
这里写图片描述

上面这个图才是关键,看到Certificate fingerprints下有个MD5,咱们要的就是这个,记住这个,就是微信验证时输入的应用签名

这里写图片描述

把上面的md5那一串数字和字母输入在上图的应用签名一栏就可以了!!!


7.提交审核就Ok了,耐心等待,说是7天内,一般一两天就审核通过了!

这里写图片描述

8.过个一两天应用审核通过,在管理中心可以看到应用已经审核通过。 
这里写图片描述

9.点击查看,可进入应用后台管理页面,可以看到,已经生成了我们分享所需要的AppId和AppSecret.

这里写图片描述

10.下面就是代码实现分享功能了,我们一步步来看,首先看一下工程结构图,在libs目录下导入分享所需要的jar包,在assets目录下,复制ShareSDK.xml,这是分享的配置文件,至于如何获取jar和ShareSDK.xml,请点击:Android快速集成指南

这里写图片描述

11.打开ShareSDK.xml文件,输入shareSdk的APPKey,和已经在微信开放平台申请到的APPID和AppSecret。

这里写图片描述

这里写图片描述

12.代码实现分享功能,首先在onCreate方法中初始化ShareSDK。

<code class="hljs java has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: "Source Code Pro", monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;"><span class="hljs-annotation" style="color: rgb(155, 133, 157); box-sizing: border-box;">@Override</span>
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">protected</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">void</span> <span class="hljs-title" style="box-sizing: border-box;">onCreate</span>(Bundle savedInstanceState)
    {
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">super</span>.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">//初始化ShareSDK</span>
        ShareSDK.initSDK(MainActivity.<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">this</span>);
        initView();
    }</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right: 1px solid rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li></ul>

13.封装分享的方法,微信支持四种分享类型,文本,图片,音乐,网页。

<code class="hljs java has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: "Source Code Pro", monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;"><span class="hljs-javadoc" style="color: rgb(136, 0, 0); box-sizing: border-box;">/**
     * 方法名称:xinWeiShare
     * <p>方法描述:微信分享
     *<span class="hljs-javadoctag" style="color: rgb(102, 0, 102); box-sizing: border-box;"> @param</span> isWeiXin true为微信 false为微信朋友圈
     *<span class="hljs-javadoctag" style="color: rgb(102, 0, 102); box-sizing: border-box;"> @param</span> handler 分享界面回调 不能为空
     *<span class="hljs-javadoctag" style="color: rgb(102, 0, 102); box-sizing: border-box;"> @param</span> context 分享界面mContext
     *<span class="hljs-javadoctag" style="color: rgb(102, 0, 102); box-sizing: border-box;"> @param</span> type 分享类型    如:Platform.SHARE_TEXT,Platform.SHARE_IMAGE,Platform.SHARE_MUSIC,Platform.SHARE_WEBPAGE
     *<span class="hljs-javadoctag" style="color: rgb(102, 0, 102); box-sizing: border-box;"> @param</span> args 分享类型 如Platform.SHARE_TEXT(微信文本类型) 必须传入 两个参数(不能少传,也不能多传) :第一个为标题 
     *                                                                          第二个为分享内容
     *                                                            
     *             分享类型 如Platform.SHARE_IMAGE(微信图片类型) 必须传入 两个参数(不能少传,也不能多传):第一个为标题 
     *                                                                          第二个为分享图片 URL地址 或者 手机文件地址
     *                                                            
     *             分享类型 如Platform.SHARE_MUSIC(微信音乐分享) 必须传入 五个参数(不能少传,也不能多传):第一个为标题 
     *                                                                          第二个为分享内容
     *                                                                          第三个为分享图片地址 URL地址 或者 手机文件地址
     *                                                                          第四个为分享音乐地址(必须携带http:// 或者 https://)
     *                                                                          第五个为分享音乐详细地址(必须携带http:// 或者 https://)
     *                                                            
     *             分享类型 如Platform.SHARE_WEBPAGE(微信网页链接分享) 必须传入四个参数(不能少传,也不能多传): 第一个为标题
     *                                                                               第二个为分享内容   
     *                                                                               第三个为分享网页图片地址  URL地址 或者 手机文件地址
     *                                                                               第四个为分享网页的地址 (必须携带http:// 或者 https://)
     * <p>备注:
     */</span>
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">public</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">void</span> <span class="hljs-title" style="box-sizing: border-box;">weiXinShare</span>(<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">boolean</span> isWeiXin, Handler handler, Context mContext, <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">int</span> type, String... args)
    {
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">switch</span> (type)
        {
            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">case</span> Platform.SHARE_TEXT:
                <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">if</span> (<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">null</span> != handler)
                {
                    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">this</span>.mHandler = handler;
                    weixinTxtShare(isWeiXin, mContext, args);
                }
                <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">//微信文本分享</span>
                <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">break</span>;
            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">case</span> Platform.SHARE_IMAGE:
                <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">//微信图片分享</span>
                <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">if</span> (<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">null</span> != handler)
                {
                    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">this</span>.mHandler = handler;
                    weiXinImgShare(isWeiXin, mContext, args);
                }
                <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">break</span>;
            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">case</span> Platform.SHARE_MUSIC:
                <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">//分享音乐</span>
                <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">if</span> (<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">null</span> != handler)
                {
                    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">this</span>.mHandler = handler;
                    weixinMusicShare(isWeiXin, mContext, args);
                }
                <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">break</span>;
            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">case</span> Platform.SHARE_WEBPAGE:
                <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">//分享网页</span>
                <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">if</span> (<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">null</span> != handler)
                {
                    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">this</span>.mHandler = handler;
                    weiXinWebShare(isWeiXin, mContext, args);
                }
                <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">break</span>;
            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">default</span>:
                <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">break</span>;
        }
    }</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right: 1px solid rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li><li style="box-sizing: border-box; padding: 0px 5px;">10</li><li style="box-sizing: border-box; padding: 0px 5px;">11</li><li style="box-sizing: border-box; padding: 0px 5px;">12</li><li style="box-sizing: border-box; padding: 0px 5px;">13</li><li style="box-sizing: border-box; padding: 0px 5px;">14</li><li style="box-sizing: border-box; padding: 0px 5px;">15</li><li style="box-sizing: border-box; padding: 0px 5px;">16</li><li style="box-sizing: border-box; padding: 0px 5px;">17</li><li style="box-sizing: border-box; padding: 0px 5px;">18</li><li style="box-sizing: border-box; padding: 0px 5px;">19</li><li style="box-sizing: border-box; padding: 0px 5px;">20</li><li style="box-sizing: border-box; padding: 0px 5px;">21</li><li style="box-sizing: border-box; padding: 0px 5px;">22</li><li style="box-sizing: border-box; padding: 0px 5px;">23</li><li style="box-sizing: border-box; padding: 0px 5px;">24</li><li style="box-sizing: border-box; padding: 0px 5px;">25</li><li style="box-sizing: border-box; padding: 0px 5px;">26</li><li style="box-sizing: border-box; padding: 0px 5px;">27</li><li style="box-sizing: border-box; padding: 0px 5px;">28</li><li style="box-sizing: border-box; padding: 0px 5px;">29</li><li style="box-sizing: border-box; padding: 0px 5px;">30</li><li style="box-sizing: border-box; padding: 0px 5px;">31</li><li style="box-sizing: border-box; padding: 0px 5px;">32</li><li style="box-sizing: border-box; padding: 0px 5px;">33</li><li style="box-sizing: border-box; padding: 0px 5px;">34</li><li style="box-sizing: border-box; padding: 0px 5px;">35</li><li style="box-sizing: border-box; padding: 0px 5px;">36</li><li style="box-sizing: border-box; padding: 0px 5px;">37</li><li style="box-sizing: border-box; padding: 0px 5px;">38</li><li style="box-sizing: border-box; padding: 0px 5px;">39</li><li style="box-sizing: border-box; padding: 0px 5px;">40</li><li style="box-sizing: border-box; padding: 0px 5px;">41</li><li style="box-sizing: border-box; padding: 0px 5px;">42</li><li style="box-sizing: border-box; padding: 0px 5px;">43</li><li style="box-sizing: border-box; padding: 0px 5px;">44</li><li style="box-sizing: border-box; padding: 0px 5px;">45</li><li style="box-sizing: border-box; padding: 0px 5px;">46</li><li style="box-sizing: border-box; padding: 0px 5px;">47</li><li style="box-sizing: border-box; padding: 0px 5px;">48</li><li style="box-sizing: border-box; padding: 0px 5px;">49</li><li style="box-sizing: border-box; padding: 0px 5px;">50</li><li style="box-sizing: border-box; padding: 0px 5px;">51</li><li style="box-sizing: border-box; padding: 0px 5px;">52</li><li style="box-sizing: border-box; padding: 0px 5px;">53</li><li style="box-sizing: border-box; padding: 0px 5px;">54</li><li style="box-sizing: border-box; padding: 0px 5px;">55</li><li style="box-sizing: border-box; padding: 0px 5px;">56</li><li style="box-sizing: border-box; padding: 0px 5px;">57</li><li style="box-sizing: border-box; padding: 0px 5px;">58</li><li style="box-sizing: border-box; padding: 0px 5px;">59</li><li style="box-sizing: border-box; padding: 0px 5px;">60</li><li style="box-sizing: border-box; padding: 0px 5px;">61</li><li style="box-sizing: border-box; padding: 0px 5px;">62</li><li style="box-sizing: border-box; padding: 0px 5px;">63</li><li style="box-sizing: border-box; padding: 0px 5px;">64</li><li style="box-sizing: border-box; padding: 0px 5px;">65</li></ul>

14.此处测试的是分享网页,分享网页的方法如下:

<code class="hljs java has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: "Source Code Pro", monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;"><span class="hljs-javadoc" style="color: rgb(136, 0, 0); box-sizing: border-box;">/**
     * 方法名称:xinweiWebShare
     * <p>方法描述:网页分享
     * <p>备注:
     */</span>
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">private</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">void</span> <span class="hljs-title" style="box-sizing: border-box;">weiXinWebShare</span>(<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">boolean</span> isWeixin, Context mContext, String... args)
    {
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">if</span> (<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">null</span> == mContext || args.length < SHARE_WEB_MIN_LEN)
        {
            MainApplication.getIns().tip(<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">"分享失败"</span>);
            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">return</span>;
        }
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">else</span>
        {
            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">this</span>.context = mContext;
            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">for</span> (<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">int</span> i = <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span>; i < args.length; i++)
            {
                String str = args[i];
                <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">if</span> (TextUtils.isEmpty(str) && i != <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2</span>)
                {
                    MainApplication.getIns().tip(<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">"分享失败"</span>);
                    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">return</span>;
                }
            }
            String title = args[<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span>];
            String text = args[<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1</span>];
            String image = args[<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2</span>];
            String url = args[<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">3</span>];
            WechatHelper.ShareParams sp = <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">null</span>;
            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">if</span> (isWeixin)
            {
                sp = <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">new</span> Wechat.ShareParams();
            }
            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">else</span>
            {
                sp = <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">new</span> WechatMoments.ShareParams();
            }
            sp.title = title;

            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">if</span> (TextUtils.isEmpty(image))
            {
                sp.imageData = ((BitmapDrawable)context.getResources().getDrawable(R.drawable.logo_mingdao)).getBitmap();
            }
            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">else</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">if</span> (image.contains(<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">"http://"</span>) || image.contains(<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">"https://"</span>))
            {
                sp.imageUrl = image;
            }
            sp.text = text;
            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">if</span> (url.contains(<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">"http://"</span>) || url.contains(<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">"https://"</span>))
            {
                sp.url = url;
            }
            sp.setShareType(Platform.SHARE_WEBPAGE);
            Platform plat = <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">null</span>;
            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">if</span> (isWeixin)
            {
                plat = ShareSDK.getPlatform(Wechat.NAME);
            }
            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">else</span>
            {
                plat = ShareSDK.getPlatform(WechatMoments.NAME);
            }
            plat.setPlatformActionListener(listener);
            plat.share(sp);
        }
    }</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right: 1px solid rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li><li style="box-sizing: border-box; padding: 0px 5px;">10</li><li style="box-sizing: border-box; padding: 0px 5px;">11</li><li style="box-sizing: border-box; padding: 0px 5px;">12</li><li style="box-sizing: border-box; padding: 0px 5px;">13</li><li style="box-sizing: border-box; padding: 0px 5px;">14</li><li style="box-sizing: border-box; padding: 0px 5px;">15</li><li style="box-sizing: border-box; padding: 0px 5px;">16</li><li style="box-sizing: border-box; padding: 0px 5px;">17</li><li style="box-sizing: border-box; padding: 0px 5px;">18</li><li style="box-sizing: border-box; padding: 0px 5px;">19</li><li style="box-sizing: border-box; padding: 0px 5px;">20</li><li style="box-sizing: border-box; padding: 0px 5px;">21</li><li style="box-sizing: border-box; padding: 0px 5px;">22</li><li style="box-sizing: border-box; padding: 0px 5px;">23</li><li style="box-sizing: border-box; padding: 0px 5px;">24</li><li style="box-sizing: border-box; padding: 0px 5px;">25</li><li style="box-sizing: border-box; padding: 0px 5px;">26</li><li style="box-sizing: border-box; padding: 0px 5px;">27</li><li style="box-sizing: border-box; padding: 0px 5px;">28</li><li style="box-sizing: border-box; padding: 0px 5px;">29</li><li style="box-sizing: border-box; padding: 0px 5px;">30</li><li style="box-sizing: border-box; padding: 0px 5px;">31</li><li style="box-sizing: border-box; padding: 0px 5px;">32</li><li style="box-sizing: border-box; padding: 0px 5px;">33</li><li style="box-sizing: border-box; padding: 0px 5px;">34</li><li style="box-sizing: border-box; padding: 0px 5px;">35</li><li style="box-sizing: border-box; padding: 0px 5px;">36</li><li style="box-sizing: border-box; padding: 0px 5px;">37</li><li style="box-sizing: border-box; padding: 0px 5px;">38</li><li style="box-sizing: border-box; padding: 0px 5px;">39</li><li style="box-sizing: border-box; padding: 0px 5px;">40</li><li style="box-sizing: border-box; padding: 0px 5px;">41</li><li style="box-sizing: border-box; padding: 0px 5px;">42</li><li style="box-sizing: border-box; padding: 0px 5px;">43</li><li style="box-sizing: border-box; padding: 0px 5px;">44</li><li style="box-sizing: border-box; padding: 0px 5px;">45</li><li style="box-sizing: border-box; padding: 0px 5px;">46</li><li style="box-sizing: border-box; padding: 0px 5px;">47</li><li style="box-sizing: border-box; padding: 0px 5px;">48</li><li style="box-sizing: border-box; padding: 0px 5px;">49</li><li style="box-sizing: border-box; padding: 0px 5px;">50</li><li style="box-sizing: border-box; padding: 0px 5px;">51</li><li style="box-sizing: border-box; padding: 0px 5px;">52</li><li style="box-sizing: border-box; padding: 0px 5px;">53</li><li style="box-sizing: border-box; padding: 0px 5px;">54</li><li style="box-sizing: border-box; padding: 0px 5px;">55</li><li style="box-sizing: border-box; padding: 0px 5px;">56</li><li style="box-sizing: border-box; padding: 0px 5px;">57</li><li style="box-sizing: border-box; padding: 0px 5px;">58</li><li style="box-sizing: border-box; padding: 0px 5px;">59</li><li style="box-sizing: border-box; padding: 0px 5px;">60</li><li style="box-sizing: border-box; padding: 0px 5px;">61</li><li style="box-sizing: border-box; padding: 0px 5px;">62</li><li style="box-sizing: border-box; padding: 0px 5px;">63</li><li style="box-sizing: border-box; padding: 0px 5px;">64</li><li style="box-sizing: border-box; padding: 0px 5px;">65</li><li style="box-sizing: border-box; padding: 0px 5px;">66</li></ul>

15.具体的分享调用

<code class="hljs java has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: "Source Code Pro", monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;"><span class="hljs-javadoc" style="color: rgb(136, 0, 0); box-sizing: border-box;">/**
     * 方法名称:weixinShare
     * 方法描述:微信分享
     */</span>
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">private</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">void</span> <span class="hljs-title" style="box-sizing: border-box;">weixinShare</span>()
    {
        String shareContentTxt = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">"我是来自Android客户端分享实例Demo的数据"</span>;
        String sharklink = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">"http://user.qzone.qq.com/1039163285/infocenter?ptsig=*Sb6sER-9smBstwyL28cYg2h0D99pYGcPvoySuzkGyc_"</span>;
        ShareUtil.getInstance().weiXinShare(<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">true</span>, mHandler, <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">this</span>, Platform.SHARE_WEBPAGE, <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">"Note客户端分享"</span>, shareContentTxt, <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">""</span>, sharklink);
    }

    <span class="hljs-javadoc" style="color: rgb(136, 0, 0); box-sizing: border-box;">/**
     * 方法名称:weixinQuanShare
     * 方法描述:微信朋友圈分享
     */</span>
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">private</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">void</span> <span class="hljs-title" style="box-sizing: border-box;">weixinQuanShare</span>()
    {
        String shareContentTxt = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">"我是来自Android客户端分享实例Demo的数据,如果您看到此条数据,可以选择忽略它!"</span>;
        String sharklink = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">"http://user.qzone.qq.com/1039163285/infocenter?ptsig=*Sb6sER-9smBstwyL28cYg2h0D99pYGcPvoySuzkGyc_"</span>;
        ShareUtil.getInstance().weiXinShare(<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">false</span>, mHandler, <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">this</span>, Platform.SHARE_WEBPAGE, shareContentTxt, <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">"Note客户端分享"</span>, <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">""</span>, sharklink);
    }</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right: 1px solid rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li><li style="box-sizing: border-box; padding: 0px 5px;">10</li><li style="box-sizing: border-box; padding: 0px 5px;">11</li><li style="box-sizing: border-box; padding: 0px 5px;">12</li><li style="box-sizing: border-box; padding: 0px 5px;">13</li><li style="box-sizing: border-box; padding: 0px 5px;">14</li><li style="box-sizing: border-box; padding: 0px 5px;">15</li><li style="box-sizing: border-box; padding: 0px 5px;">16</li><li style="box-sizing: border-box; padding: 0px 5px;">17</li><li style="box-sizing: border-box; padding: 0px 5px;">18</li><li style="box-sizing: border-box; padding: 0px 5px;">19</li><li style="box-sizing: border-box; padding: 0px 5px;">20</li><li style="box-sizing: border-box; padding: 0px 5px;">21</li></ul>

16.分享完成,测试

这里写图片描述

分享成功

这里写图片描述

Android——App内文件分享功能

国内的Android开发者,在遇到App内有分享功能时,基本都是对接友盟分享、ShareSDK分享等第三方SDK。简单的集成SDK以及配置之后,即可分享至多个不同App平台。反而很少来使用Androi...
  • xiaoyu_93
  • xiaoyu_93
  • 2017年08月08日 17:28
  • 1868

Android微信文件分享

Android,微信文件分享
  • xiaonadiandian
  • xiaonadiandian
  • 2016年02月16日 16:36
  • 2120

微信开发之——JSSDK,基础接口——分享接口

以下代码需放入wx.ready(function(){}),即config注入权限验证成功之后 1.分享到朋友圈 wx.onMenuShareTimeline({ title: '张苗...
  • u013589542
  • u013589542
  • 2017年02月04日 17:36
  • 705

Android:调用系统分享功能

Android:调用系统分享功能
  • books1958
  • books1958
  • 2015年04月13日 18:25
  • 4577

Android Intent分享文件|分享图片|分享文字|功能的实现

Android Intent 实现分享功能。可分享图片,文件,文字给QQ好友,微信好友,短信联系人。 如我所知:网上已经有一大堆这样相关的资料。但是有些不幸的是:没有看到一个完整的,比较全面的,可以直...
  • DucklikeJAVA
  • DucklikeJAVA
  • 2015年09月19日 21:46
  • 1318

Android使用NFC分享文件

1.NFC   NFC:近距离无线通讯技术
  • chenyjays
  • chenyjays
  • 2014年11月21日 20:23
  • 1740

Android:读取Word文档

问题详情目前了解到的读取Word文档的有三种形式: 1、直接调用第三方应用,如WPS 2、使用tm-extractors-0.4.jar 3、使用poi解决思路使用第三方应用这种查看内容效果时最...
  • one1go
  • one1go
  • 2017年05月25日 17:43
  • 3286

Android第三方授权分享在新浪微博授权提示:文件不存在 C8998 的解决方法

最近项目集成第三方分享,碰到的一些问题,记录下,也希望有同样问题的朋友可以有所帮助 在新浪微博授权时出现下面的问题 点击一直提示文件不存在c8998什么鬼,再仔细核对过应用签名配置确认无误后还是...
  • siyecaomoyang
  • siyecaomoyang
  • 2017年03月13日 16:06
  • 596

将图片和文件分享到自己的app中来

有时候我们需要将一张图片或者文件从文件管理器中分享到我们自己的app中。 1 我们需要在配置文件中配置下面的信息,才能让别人找到我们的app。 注意是在起始界面的信息中配置         ...
  • u014374622
  • u014374622
  • 2016年09月20日 15:37
  • 584

Android 7.0适配 打开文件和分享文件

嗯,我就闲来无事想说一句,我是可爱的分割线(●’◡’●)。7.0的禁止不安全路径被外部访问。其中典型例子就是拍照。所以我以为分享图片也是需要适配,实验得知并不是。分享走的是系统的,所以不会有错误,如果...
  • u011216273
  • u011216273
  • 2017年05月31日 17:25
  • 3450
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:【Android 分享】ShareSDK微信分享详解
举报原因:
原因补充:

(最多只允许输入30个字)