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



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

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • 微信小程序显示富文本_微信小程序div

    微信小程序显示富文本_微信小程序divwxParse方法我踩雷了微信官方文档有个更为便捷的标签<rich-textnodes=”{{}}”></rich-text>

  • RewriteCond 重写规则执行条件

    RewriteCond 重写规则执行条件RewriteCond重写规则执行条件语法:RewriteCondTestStringCondPattern生效域:serverconfig,virtualhost,directory,.htaccess特别的上面的TestString,可提供反向引用.引用模式为:%N其中N为(0<=N<=9),引用当前若干RewriteCo…

  • SSRF漏洞进阶——攻击内网Redis

    SSRF漏洞进阶——攻击内网Redis警告请勿使用本文提到的内容违反法律。本文不提供任何担保目录警告一、拓展攻击面二、实验环境三、实践漏洞学习(一)环境部署与BlindSSRF方法是:通过观察响应时间和响应状态判断指定端口是否打开。(二)CentOS机器开启Redis服务,kali机器写定时任务到CentOS机器中。(三)通过gopher协议攻击Redis四、漏洞修复警告SSRF漏洞分析与实践_xiaochuhe.的博客-CSDN博客一、拓展攻击面结合gop…

  • 百度推团购导航已失良机,团购搜索正成主流趋势

    百度推团购导航已失良机,团购搜索正成主流趋势

  • 谷歌浏览器驱动测试

    谷歌浏览器驱动测试selenium驱动谷歌浏览器,ip+headless+不出现自动测试字样importtimefromseleniumimportwebdriverfromselenium.webdriverimportChromeOptionsfromselenium.webdriver.chrome.optionsimportOptionsimportrequestsdefget_proxy():proxy=requests.get(“http://127.0.0

  • Python for循环的使用

    Python for循环的使用Pythonfor循环的使用(一)for循环的使用场景1.如果我们想要某件事情重复执行具体次数的时候可以使用for循环。2.for循环主要用来遍历、循环、序列、集合、字典,文件、甚至是自定义类或函数。(二)for循环操作列表实例演示使用for循环对列表进行遍历元素、修改元素、删除元素、统计列表中元素的个数。1.for循环用来遍历整个列表#for循环主

发表回复

您的电子邮箱地址不会被公开。

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