Android实战——ShareSDk的使用,实现一键分享微信好友、朋友圈、QQ

Android实战——ShareSDk的使用,实现一键分享微信好友、朋友圈、QQShareSDk的使用,实现一键分享微信好友、朋友圈、QQ事先说明:ShareSDK默认QQ可以分享,微信分享则需要在微信的开放平台上认证并申请应用填入对应信息即可微信认证和申请应用涉及到打包和签名APK,请大家自行查询相关资料进行操作关于ShareSDK的开发,参考ShareSDK官网为准欢迎关注CSDN博客:Hensen_的个人主

大家好,又见面了,我是你们的朋友全栈君。

ShareSDk的使用,实现一键分享微信好友、朋友圈、QQ


事先说明:

ShareSDK默认QQ可以分享,微信分享则需要在微信的开放平台上认证并申请应用填入对应信息即可

微信认证和申请应用涉及到打包和签名APK,请大家自行查询相关资料进行操作

关于ShareSDK的开发,参考ShareSDK官网为准

步骤一:在ShareSDk官网注册账号,并创建应用:

Android实战——ShareSDk的使用,实现一键分享微信好友、朋友圈、QQ


步骤二:在ShareSDk官网下载所需要的分享的SDK(这里只是介绍微信和QQ两种,其他都一样):

Android实战——ShareSDk的使用,实现一键分享微信好友、朋友圈、QQ

步骤三:将下载好的包解压,在Android Studio中导入两个Module,在ShareSDk for Android文件夹Libs目录下2个文件夹,即是要导入的Module

Android实战——ShareSDk的使用,实现一键分享微信好友、朋友圈、QQ

导入之后,项目结构多了一个oneKeyShareNew和shareSDK:

Android实战——ShareSDk的使用,实现一键分享微信好友、朋友圈、QQ


步骤四:接着右键oneKeyShareNew,open Module Settings,添加对ShareSDK的依赖

Android实战——ShareSDk的使用,实现一键分享微信好友、朋友圈、QQ


步骤五:重复上面步骤,在自己的项目中添加对oneKeyShareNew的依赖

Android实战——ShareSDk的使用,实现一键分享微信好友、朋友圈、QQ


步骤六:在你的项目中创建一个Assets的目录,将ShareSDK for Android/Res目录下的ShareSDK.xml复制到Assets

Android实战——ShareSDk的使用,实现一键分享微信好友、朋友圈、QQ


步骤七:将ShareSDK for Android/Src目录下的wxapi文件夹复制到你的项目中

Android实战——ShareSDk的使用,实现一键分享微信好友、朋友圈、QQ


步骤八:添加权限

 <uses-permission android:name="android.permission.GET_TASKS" />
 <uses-permission android:name="android.permission.INTERNET" />
 <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
 <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
 <uses-permission android:name="android.permission.READ_PHONE_STATE" />
 <uses-permission android:name="android.permission.MANAGE_ACCOUNTS"/>
 <uses-permission android:name="android.permission.GET_ACCOUNTS"/>
 <!-- 蓝牙分享所需的权限 -->
  <uses-permission android:name="android.permission.BLUETOOTH" />
  <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />

步骤九:在ShareSDK.xml中添加ShareSDK应用APPKey

<ShareSDK
        AppKey = "1185fd429f4da"/> <!-- 修改成你在sharesdk后台注册的应用的appkey"-->

步骤十:添加所ShareSDK需要的manifests配置

        <!-- shareSDK begin -->
        <activity
            android:name="com.mob.tools.MobUIShell"
            android:configChanges="keyboardHidden|orientation|screenSize"
            android:screenOrientation="portrait"
            android:theme="@android:style/Theme.Translucent.NoTitleBar"
            android:windowSoftInputMode="stateHidden|adjustResize">
            <intent-filter>
                <data android:scheme="tencent1104646053" />

                <action android:name="android.intent.action.VIEW" />

                <category android:name="android.intent.category.BROWSABLE" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>
        <!-- 微信分享回调 -->
        <activity
            android:name=".wxapi.WXEntryActivity"
            android:configChanges="keyboardHidden|orientation|screenSize"
            android:exported="true"
            android:screenOrientation="portrait"
            android:theme="@android:style/Theme.Translucent.NoTitleBar" />
        <!-- shareSDK end -->

步骤十一:在代码中可以使用官方文档代码进行分享了

    @Override
    public void onCreate() {
        super.onCreate();
        //初始化shareSDK
        ShareSDK.initSDK(this);
    }

    /**
     * 一鍵分享
     */
    private void showShare() {
        //ShareSDK初始化
        ShareSDK.initSDK(getActivity());
        OnekeyShare oks = new OnekeyShare();
        //关闭sso授权
        oks.disableSSOWhenAuthorize();
        // 分享时Notification的图标和文字  2.5.9以后的版本不调用此方法
        //oks.setNotification(R.drawable.ic_launcher, getString(R.string.app_name));
        // title标题,印象笔记、邮箱、信息、微信、人人网和QQ空间使用
        oks.setTitle("分享");
        // titleUrl是标题的网络链接,仅在人人网和QQ空间使用
        oks.setTitleUrl("http://sharesdk.cn");
        // text是分享文本,所有平台都需要这个字段
        oks.setText("我爱京东");
        // imagePath是图片的本地路径,Linked-In以外的平台都支持此参数
        // oks.setImagePath("/sdcard/test.jpg");//确保SDcard下面存在此张图片
        // url仅在微信(包括好友和朋友圈)中使用
        oks.setUrl("http://sharesdk.cn");
        // comment是我对这条分享的评论,仅在人人网和QQ空间使用
        //oks.setComment("我是测试评论文本");
        // site是分享此内容的网站名称,仅在QQ空间使用
        oks.setSite("我爱京东");
        // siteUrl是分享此内容的网站地址,仅在QQ空间使用
        oks.setSiteUrl("http://sharesdk.cn");
        // 启动分享GUI
        oks.show(getActivity());
    }

    @Override
    public void onDestroy() {
        super.onDestroy();
        //停止shareSDK
        ShareSDK.stopSDK(getActivity());
    }


步骤十二:完成以上步骤只能对QQ进行分享,如果还想对微信分享,则需要在微信开放平台创建应用获取APPID和APPSecret,并将其填入ShareSDK中对应的标签中即可。这里大家可能集成后还是不能分享,很有可能你是直接用usb调试安装的APK或者是debug的APK,这个时候并不是你自己build签名好的APK,所以大家先build签名好的APK再传到手机安装。

Android实战——ShareSDk的使用,实现一键分享微信好友、朋友圈、QQ


步骤十三:查看效果图(QQ和weChat)

Android实战——ShareSDk的使用,实现一键分享微信好友、朋友圈、QQ

其他效果图(新浪微博、腾讯微博、QQ空间)

Android实战——ShareSDk的使用,实现一键分享微信好友、朋友圈、QQ



版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/134334.html原文链接:https://javaforall.net

(0)
上一篇 2022年5月2日 下午4:20
下一篇 2022年5月2日 下午4:20


相关推荐

  • arcgis10从初学到精通电子版_arcgis入门到精通

    arcgis10从初学到精通电子版_arcgis入门到精通本教程内容包括:ArcGIS平台简介、ArcGIS应用基础、空间数据的采集与组织、空间数据的转换与处理、空间数据的可视化表达、GIS空间分析导论、矢量数据的空间分析、栅格数据的空间分析、三维分析、地统计分析等。适用于高等学校GIS专业、测绘工程、国土测绘与规划等专业,大学本科研究ArcGIS实验教程:ArcGIS10.2手把手图文安装教程ArcGIS实验教程——实验一:ArcGIS软件的认识与使用ArcGIS实验教程——实验二:地理配准完整操作步骤ArcGIS实验教程——实验三:矢量数据采集与编辑

    2025年9月15日
    7
  • python中cPickle用法「建议收藏」

    python中cPickle用法「建议收藏」在python中,一般可以使用pickle类来进行python对象的序列化,而cPickle提供了一个更快速简单的接口,如python文档所说的:“cPickle–Afasterpickle”。cPickle可以对任意一种类型的python对象进行序列化操作,比如list,dict,甚至是一个类的对象等。而所谓的序列化,我的粗浅的理解就是为了能够完整的保存并能够完全可逆的恢复。在cPi…

    2022年6月29日
    26
  • 个人防火墙软件排名「建议收藏」

    个人防火墙软件排名「建议收藏」1.Look’n’stopLook’n’Stop被誉为世界顶级防火墙!与同类产品相比具有最为突出的强劲功能以及与众不同的特点,不仅功能评测在知名防火墙中是最强的!而且软件大小只有区区600多k十分小巧,占内存非常小,可以监控dll,更具强大的御防******能力!下载Look’n’stop:[url]http://3800cc.com/Soft/aqfh/2129.h…

    2022年5月5日
    108
  • [MySQL高级](一) EXPLAIN用法和结果分析

    [MySQL高级](一) EXPLAIN用法和结果分析1 EXPLAIN 简介使用 EXPLAIN 关键字可以模拟优化器执行 SQL 查询语句 从而知道 MySQL 是如何处理你的 SQL 语句的 分析你的查询语句或是表结构的性能瓶颈 通过 EXPLAIN 我们可以分析出以下结果 表的读取顺序数据读取操作的操作类型哪些索引可以使用哪些索引被实际使用表之间的引用每张表有多少行被优化器查询 使用方式如下 EXPLAIN SQL 语

    2026年3月20日
    2
  • Xiaojie雷达之路—车载雷达信号处理流程

    Xiaojie雷达之路—车载雷达信号处理流程Hello,大家好,我是Xiaojie,欢迎大家能够和Xiaojie来一起学习毫米波雷达知识,本片文章主要是介绍车载雷达信号处理流程,从车载雷达的用途、雷达波形、调频连续波原理、测距、测速、恒虚警检测、测角、聚类、跟踪

    2022年10月8日
    5
  • python pycharm 调试(debug)快捷键「建议收藏」

    python pycharm 调试(debug)快捷键「建议收藏」1.eclipse配置的debug快捷键1.showexecutionpoint(alt+F10)显示当前所有断点2.stepover(F6)单步调试。若函数A内存在子函数a时,不会进入子函数a内执行单步调试,而是把子函数a当作一个整体,一步执行3.stepinto(F5)单步调试。若函数A内存在子函数a时,会进入子函数a内执行单步调试。4.stepintomycode(Alt+Shift+F7)执行下一行但忽略libraries(导入库的语句)5.force

    2025年6月22日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号