Unity接入ShareSDK分享功能(Android端)

一、Mob官网注册并下载unity版本的shareSDK

1、进入开发者平台,创建应用;

2、创建成功后获得应用的  App Key 和 App Secret,最好保存下来以便后续使用;

3、下载ShareSDK,unity2019以后的版本,选择SourceCodeGradle版本,我这里用的是unity 2021;github地址:GitHub - MobClub/New-Unity-For-ShareSDK at SourceCodeGradle

二、将shareSDK导入unity并进行配置

按照官方集成文档将ShareSDK进行配置

官方文档:MobTech集成文档-MobTech

其中 launcherTemplate.gradle 文件中所添加的代码,是为了显示需要分享的平台,可以根据需求添加需要分享的平台名称,平台名称在 PlatformType.cs 文件中。

        devInfo {
            Wechat {
                appId "wx4868b35061f87885"
                appSecret "64020361b8ec4c99936c0e3999a9f249"
                withShareTicket true
                bypassApproval false
                enable true
            }
        }

三、在unity中进行配置

1、通过File -> build Settings 选择(Switch Platform) Android 平台,点击PlayerSettings进行配置;

2、Publishing Settings配置:Project Keystore 下的Path选择导入SDK资源中自带的文件demokey.keystore,Password是123456;

3、Other Settings配置:填写Package Name. 注意如果需要分享到微信,则Package Name必须与微信开放平台填写的包名一致。

四、编写实现分享逻辑代码

点击分享按钮后,出现平台进行分享,本代码只做了分享文字的功能,若想分享其它内容,可以参考SDK中的demo.cs脚本。

using System.Collections;
using UnityEngine;
using UnityEngine.UI;
using cn.sharesdk.unity3d;
using TMPro;

public class Share : MonoBehaviour
{

    public Button shareBtn;
    private ShareSDK ssdk;
    ShareContent content;

    void Start()
    {
        Init();
        InitBtns();
    }

    //获得ShareSDK对象,并且注册分享后的回调
    void Init()
    {
        ssdk = GameObject.Find("ARCamera").GetComponent<ShareSDK>();
        ssdk.shareHandler = ShareResultHandler;
    }

    //初始化按钮的点击事件
    void InitBtns()
    {
        shareBtn.onClick.AddListener(OnClickWeChatBtn);
    }

    //测试短信
    //void OnClickTestMsgBtn()
    //{
    //    PrintInfo("OnClickTestMsgBtn");
    //    ssdk.ShowPlatformList(new PlatformType[] { PlatformType.SMS }, GetShareInfo(" SMS "), 100, 100);
    //}

    //测试微信
    void OnClickWeChatBtn()
    {
        ssdk.ShowPlatformList(new PlatformType[] { PlatformType.WeChat }, GetShareInfo("we chat"), 100, 100);
    }

    //测试邮件按钮
    //void OnClickEmailBtn()
    //{
    //    PrintInfo("OnClickEmailBtn");
    //    ssdk.ShowPlatformList(new PlatformType[] { PlatformType.Mail }, GetShareInfo("mail"), 100, 100);
    //}

    //测试直接打开
    //void OnClickShowContentBtn()
    //{
    //    PrintInfo("OnClickShowContentBtn");
    //    ssdk.ShareContent(PlatformType.SMS, GetShareInfo("SMS"));
    //}

    //获得分享的内容结构
    ShareContent GetShareInfo(string platformType)
    {
        ShareContent content = new ShareContent();
        content.SetText("this is a test string.");
        //content.SetImageUrl("https://f1.webshare.mob.com/code/demo/img/1.jpg");
        //content.SetTitle("test title:" + platformType);
        //content.SetTitleUrl("http://www.mob.com");
        //content.SetSite("Mob-ShareSDK");
        //content.SetSiteUrl("http://www.mob.com");
        //content.SetUrl("http://www.mob.com");
        //content.SetComment("test description");
        //content.SetMusicUrl("http://mp3.mwap8.com/destdir/Music/2009/20090601/ZuiXuanMinZuFeng20090601119.mp3");
        content.SetShareType(ContentType.Text);
        return content;
    }


    //分享后的回调
    void ShareResultHandler(int reqID, ResponseState state, PlatformType type, Hashtable result)
    {
        if (state == ResponseState.Success)
        {
            print("share result :");
            print(MiniJSON.jsonEncode(result));
        }
        else if (state == ResponseState.Fail)
        {
            print("fail! throwable stack = " + result["stack"] + "; error msg = " + result["msg"]);
        }
        else if (state == ResponseState.Cancel)
        {
            print("cancel !");
        }
    }
}

五、打包生成 .apk 安装包

参考

Unity接入ShareSDK的操作详解(Demo)_sharesdk修改jar包-CSDN博客

MobTech集成文档-MobTech

【ShareSDK】Unity集成 - 知乎 (zhihu.com)

https://github.com/MobClub/New-Unity-For-ShareSDK/tree/SourceCodeGradle

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Unity接入SDK是指在Unity项目中集成第三方SDK的过程。具体的接入流程包括以下几个步骤: 1. 准备工作:首先,你需要从SDK提供商处获取SDK的相关文件,包括jar文件、iOS的.framework文件等。 2. 导入SDK文件:将SDK的相关文件导入到Unity项目中。对于Android平台,可以将jar文件放置在Unity项目的Plugins文件夹下;对于iOS平台,可以将.framework文件拖入Unity项目中。 3. 配置SDK参数:在Unity中,你需要根据SDK的要求配置相应的参数。这些参数可能包括App ID、App Key、回调URL等。你可以在Unity中创建一个脚本,用来存储和管理这些参数。 4. 调用SDK接口:根据SDK的文档和示例代码,调用SDK提供的接口完成相应的功能。你可以在Unity中编写脚本,通过调用SDK接口实现登录、支付、分享功能。 以上是Unity接入SDK的一般流程。具体的接入方法和代码示例可以参考SDK提供商的文档和示例代码。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [unity接入SDK流程(android)](https://download.csdn.net/download/lb18520182905/44974594)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [[Unity]Unity接平台SDK(3种方式)](https://blog.csdn.net/zp288105109a/article/details/80244617)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [【Unity游戏开发】SDK接入与集成——小白入门篇](https://blog.csdn.net/weixin_34195142/article/details/85919506)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值