• Android之第三方平台实现多平台分享操作


    开发中常常遇到分享操作,当用到多种分享时,如:QQ,微信,微博,短信等,可以借助第三方平台来完成,此博客主要借助mob平台来完成相关操作,当然也可以借助其他平台,如友盟等。

    先来看看效果图:

                        

    如图看出包含了多个平台

    首先去mob平台注册成为开发者,下载相关SDK,根据文档即可完成以上相关操作

    SDK可根据需要下载,下载后导入项目,

    到所需平台申请APP ID 和密钥等

    在ShareSDK.xml中配置相关信息

    <ShareSDK 
            AppKey = "12be1886447e7"/> <!-- 修改成你在sharesdk后台注册的应用的appkey"-->
        
        <!-- 多个平台id  key 去申请即可  -->
        <SinaWeibo
            Id="1"
            SortId="1"
            AppKey="568898243"
            AppSecret="38a4f8204cc784f81f9f0daaf31e02e3"
            RedirectUrl="http://www.sharesdk.cn"
            ShareByAppClient="false"
            Enable="true" />
    
        <TencentWeibo
            Id="2" 
            SortId="2"
            AppKey="801307650"
            AppSecret="ae36f4ee3946e1cbb98d6965b0b2ff5c"
            RedirectUri="http://www.baidu.com"
            Enable="true" />
    
        <!-- ShareByAppClient标识是否使用微博客户端分享,默认是false -->
        <QZone
            Id="3"
            SortId="3"
            AppId="100371282"
            AppKey="aed9b0303e3ed1e27bae87c33761161d"
            ShareByAppClient="false"
            Enable="true" />

    当然调用第三方登录方法就很简单了,只需一个方法就可完成所有平台的分享了,

    private void showShare() {
             ShareSDK.initSDK(this);
             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("https://my.oschina.net/zhangqie/home");
             // text是分享文本,所有平台都需要这个字段
             oks.setText("我是分享的内容哦");
             // imagePath是图片的本地路径,Linked-In以外的平台都支持此参数
             //oks.setImagePath("/sdcard/test.jpg");//确保SDcard下面存在此张图片
             // url仅在微信(包括好友和朋友圈)中使用
             oks.setUrl("https://my.oschina.net/zhangqie/home");
             // comment是我对这条分享的评论,仅在人人网和QQ空间使用
             oks.setComment("我是测试评论文本");
             // site是分享此内容的网站名称,仅在QQ空间使用
             oks.setSite("网站名称");
             // siteUrl是分享此内容的网站地址,仅在QQ空间使用
             oks.setSiteUrl("http://sharesdk.cn");
    
            // 启动分享GUI
             oks.show(this);
             }

    源码点击下载

  • 相关阅读:
    ## 密码学常识思考
    解决 Oracle10g安装过程中"无法确定主机的IP地址时产生该异常错误"
    去掉ViewState提高网站的性能
    vs2008在vs中编辑生成dll和exe方法
    [Django] 数据库驱动
    Sharepoint2010 BCS 外部列表2000行限制的解决办法
    解决The content of element type "webapp" must match报错
    使用HttpServlet时报错A child container failed during start
    SpringMVC中请求中文乱码问题
    spring cloud gateway 二次开发之 动态路由注意事项
  • 原文地址:https://www.cnblogs.com/zhangqie/p/6634066.html
Copyright © 2020-2023  润新知