美文网首页Sharesdk
sharesdk flutter集成从零指南

sharesdk flutter集成从零指南

作者: howhyone | 来源:发表于2019-01-29 16:22 被阅读0次

    Flutter环境搭建可以看下:Flutter环境搭建介绍
    flutter 使用的工具是VSCode

    一 创建一个flutter应用

    1 启动 VS Code

    2 调用 View>Command Palette…

    3 输入 ‘flutter’, 然后选择 ‘Flutter: New Project’ action

    4 输入 Project 名称 (如myapp), 然后按回车键

    5 指定放置项目的位置,然后按蓝色的确定按钮

    等待项目创建继续,并显示main.dart文件

    上述命令创建一个Flutter项目,项目名为myapp,其中包含一个使用Material 组件的简单的演示应用程序。

    在项目目录中,您的应用程序的代码位于 lib/main.dart.

    二添加SDK

    1 在pubspec.yaml文件中加入下面依赖(格式要对齐)

    dependencies:
      flutter:
        sdk: flutter
      sharesdk_plugin: 
      # The following adds the Cupertino Icons font to your application.
      # Use with the CupertinoIcons class for iOS style icons.
      cupertino_icons: ^0.1.2
    

    2 重新编辑 sharesdk.podspec 文件设置 dependency,具体支持的平台可以参阅官方pods文档
    3 点击pubspec.yaml文件右上角的下载按钮,flutter packages get :会将SDK下载到本地
    4 点击F5之后,xcode工程pods自动导入SDK

    image.png

    三xcode配置

    1 在项目工程的Info.plist 中增加 MOBAppKey 和 MOBAppSecret 两个字段
    2 配置urlscheme
    3 配置白名单
    以上都是xcode 的基础配置,不清楚的可以具体看sharesdkiOS集成文档

    四shareSDK分享 代码

    1 初始化:

    import 'package:sharesdk_plugin/sharesdk_plugin.dart';
    
    void initState(){
    
        ShareSDKRegister register = ShareSDKRegister();
    
        register.setupWechat("wx617c77c82218ea2c", "c7253e5289986cf4c4c74d1ccc185fb1");
    
        register.setupSinaWeibo("568898243", "38a4f8204cc784f81f9f0daaf31e02e3",
    
            "http://www.sharesdk.cn");
    
        register.setupQQ("100371282", "aed9b0303e3ed1e27bae87c33761161d");
    
        ShareSDK.regist(register);
    
        super.initState();
    
      }
    
    

    2授权方法

     SharesdkPlugin.auth(ShareSDKPlatforms.qq, null, (SSDKResponseState state, Map user, SSDKError error){
        //   showAlert(state, user != null ? user:error.rawData, context);
        print("error is $error");
        });
    

    3分享方法

    SSDKMap params =SSDKMap() ..setGeneral("title", "text", "http://ww1.sinaimg.cn/mw690/006dJESWgw1f6iyb8bzraj31kw0v67a2.jpg", null, null, "http://www.bai.com", null, null, null, SSDKContentTypes.webpage);
      //QQ空间平台定制的分享方法
     // SSDKMap paramQQZone =SSDKMap()..setQQ("text", "title", "http://www.bai.com", null, null, null, null, "http://ww1.sinaimg.cn/mw690/006dJESWgw1f6iyb8bzraj31kw0v67a2.jpg", "http://ww1.sinaimg.cn/mw690/006dJESWgw1f6iyb8bzraj31kw0v67a2.jpg", "http://ww1.sinaimg.cn/mw690/006dJESWgw1f6iyb8bzraj31kw0v67a2.jpg", null, null, SSDKContentTypes.webpage, ShareSDKPlatforms.qZone);
      params.setQQ("text", "title", "http://www.bai.com", null, null, null, null, "http://ww1.sinaimg.cn/mw690/006dJESWgw1f6iyb8bzraj31kw0v67a2.jpg", "http://ww1.sinaimg.cn/mw690/006dJESWgw1f6iyb8bzraj31kw0v67a2.jpg", "http://ww1.sinaimg.cn/mw690/006dJESWgw1f6iyb8bzraj31kw0v67a2.jpg", null, null, SSDKContentTypes.webpage, ShareSDKPlatforms.qZone);
      // 指定平台分享
      // SharesdkPlugin.share(ShareSDKPlatforms.qZone, paramqq, (SSDKResponseState state, Map userdata, Map contentEntity, SSDKError error){
      //   print('error =======$error');
      // });
    
      // 分享菜单
      SharesdkPlugin.showMenu(null, params, (SSDKResponseState state, ShareSDKPlatform platform, Map userData, Map contentEntity, SSDKError error)
      {
        print('error =======$error');
      });
    }
    

    集成常见问题:

    1 分享菜单显示英文,如何显示中文:

    在plist文件里添加下localizations:点击+号,选择localizations这个选项,再添加2个item,加Chinese和English 本地化语言

    相关文章

      网友评论

        本文标题:sharesdk flutter集成从零指南

        本文链接:https://www.haomeiwen.com/subject/ntmxsqtx.html