sharesdk 1.0.6

  • README.md
  • CHANGELOG.md
  • Example
  • Installing
  • Versions
  • 77

Document Language: English | 中文

ShareSDK For Flutter #

ShareSDK is a social sharing component that provides social functions for apps, like authorization and share, and has social statistical analysis management background. #

supported original ShareSDK minimum version:

introduce: http://www.mob.com/product/sharesdk

plugin homepage: https://pub.dartlang.org/packages/sharesdk

official document: http://wiki.mob.com/快速集成/

Getting Started #

Refer to the official document

If you need to customize the platforms:

#
# To learn more about a Podspec see http://guides.cocoapods.org/syntax/podspec.html
#
Pod::Spec.new do |s|
s.name             = 'sharesdk'
s.version          = '0.0.1'
s.summary          = 'flutter plugin for sharesdk.'
s.description      = 'ShareSDK is the most comprehensive Social SDK in the world,which share easily with 40+ platforms.'
s.homepage         = 'http://www.mob.com'
s.license          = { :file => '../LICENSE' }
s.author           = { 'Mob' => 'mobproducts@163.com' }
s.source           = { :path => '.' }
s.source_files = 'Classes/**/*'
s.public_header_files = 'Classes/**/*.h'
s.dependency 'Flutter'
s.dependency 'mob_sharesdk'
#  s.dependency 'mob_sharesdk/ShareSDKUI'
#  s.dependency 'mob_sharesdk/ShareSDKPlatforms/QQ'
#  s.dependency 'mob_sharesdk/ShareSDKPlatforms/SinaWeibo'
#  s.dependency 'mob_sharesdk/ShareSDKPlatforms/WeChat'
#  s.dependency 'mob_sharesdk/ShareSDKPlatforms/Facebook'
#  s.dependency 'mob_sharesdk/ShareSDKPlatforms/Twitter'

s.ios.deployment_target = '8.0'
end
  • Then you need to configure Appkey and AppSecret in info.plist according to the official document, as well as the whitelist and urlScheme of each platform.

  • Android : You need to edit build.gradle, mobsdk.gradle file again to select the platform you need to use, For specific supported platforms, please refer to official website technical documentation To meet the requirements of the example project, you need to configure at least the following platforms:

  • build.gradle:

buildscript {
repositories {
google()
jcenter()
maven {
url "http://mvn.mob.com/android"
}
}

dependencies {
classpath 'com.android.tools.build:gradle:3.1.2'
classpath 'com.mob.sdk:MobSDK:+'
}
}
  • mobsdk.gradle:
MobSDK {
appKey "moba6b6c6d6"
appSecret "b89d2427a3bc7ad1aea1e1e8c1d36bf3"

ShareSDK {

// platform configuration information
devInfo {
QQ {
id 7
sortId 7
appId "100371282"
appKey "aed9b0303e3ed1e27bae87c33761161d"
shareByAppClient true
bypassApproval false
enable true
}

SinaWeibo {
id 1
sortId 1
appKey "568898243"
appSecret "38a4f8204cc784f81f9f0daaf31e02e3"
callbackUri "http://www.sharesdk.cn"
shareByAppClient true
enable true
}

Wechat {
id 4
sortId 4
appId "wx4868b35061f87885"
appSecret "64020361b8ec4c99936c0e3999a9f249"
userName "gh_afb25ac019c9"
path "pages/index/index.html?id=1"
withShareTicket true
miniprogramType 0
bypassApproval false
enable true
}

Facebook {
id 8
sortId 8
appKey "1412473428822331"
appSecret "a42f4f3f867dc947b9ed6020c2e93558"
callbackUri "https://mob.com"
shareByAppClient true
enable true
}

Twitter {
id 9
sortId 9
appKey "viOnkeLpHBKs6KXV7MPpeGyzE"
appSecret "NJEglQUy2rqZ9Io9FcAU9p17omFqbORknUpRrCDOK46aAbIiey"
callbackUri "http://mob.com"
shareByAppClient true
enable true
}
}
}
}

0.0.1 #

  • Add iOS bridge.

1.0.0 #

  • Add android bridge
  • Modify ReadMe.md

1.0.5 #

  • Update the document

1.0.6 #

  • Update registration instructions

example/README.md

sharesdk_example #

supported original ShareSDK minimum version:

Document Language: English | 中文

  • import library

      import 'package:sharesdk/sharesdk.dart';
    
  • registry platforms(iOS)

        @override
        void initState() {
          // TODO: implement initState
          ShareSDKRegister register = ShareSDKRegister();
    
          register.setupWechat(
              "wx617c77c82218ea2c", "c7253e5289986cf4c4c74d1ccc185fb1");
          register.setupSinaWeibo("568898243", "38a4f8204cc784f81f9f0daaf31e02e3",
              "http://www.sharesdk.cn");
          register.setupQQ("100371282", "aed9b0303e3ed1e27bae87c33761161d");
          register.setupFacebook(
              "1412473428822331", "a42f4f3f867dc947b9ed6020c2e93558", "shareSDK");
          register.setupTwitter("viOnkeLpHBKs6KXV7MPpeGyzE",
              "NJEglQUy2rqZ9Io9FcAU9p17omFqbORknUpRrCDOK46aAbIiey", "http://mob.com");
    
          //注册
          ShareSDK.regist(register);
    
          super.initState();
        }
    
    
  • share to facebook

      SSDKMap params = SSDKMap()..setGeneral("text", 
      ["https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1541565611543&di=4615c8072e155090a2b833059f19ed5b&imgtype=0&src=http%3A%2F%2Fb-ssl.duitang.com%2Fuploads%2Fitem%2F201501%2F06%2F20150106003502_Ajcte.jpeg"], 
      null, "title", SSDKContentTypes.auto);
    
      ShareSDK.share(ShareSDKPlatforms.facebook, params, (SSDKResponseState state, Map userdata, Map contentEntity, SSDKError error){
        showAlert(state, error.rawData, context);
      });
    
  • auth

      ShareSDK.auth(ShareSDKPlatforms.facebook, null, (SSDKResponseState state, Map user, SSDKError error){
        showAlert(state, user != null ? user:error.rawData, context);
      });
    
  • show platforms menu

      SSDKMap params = SSDKMap()..setGeneral("text", 
      ["https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1541565611543&di=4615c8072e155090a2b833059f19ed5b&imgtype=0&src=http%3A%2F%2Fb-ssl.duitang.com%2Fuploads%2Fitem%2F201501%2F06%2F20150106003502_Ajcte.jpeg"], 
      null, "title", SSDKContentTypes.auto);
      ShareSDK.showMenu(null, params, (SSDKResponseState state, ShareSDKPlatform platform, Map userData, Map contentEntity, SSDKError error){
    
        showAlert(state, error.rawData, context);
      });   
    
  • Please refer to sharesdk_interface.dart for other interfaces

Use this package as a library

1. Depend on it

Add this to your package's pubspec.yaml file:


dependencies:
  sharesdk: ^1.0.6

2. Install it

You can install packages from the command line:

with Flutter:


$ flutter packages get

Alternatively, your editor might support flutter packages get. Check the docs for your editor to learn more.

3. Import it

Now in your Dart code, you can use:


import 'package:sharesdk/sharesdk.dart';
  
Version Uploaded Documentation Archive
1.0.6 Jan 9, 2019 Go to the documentation of sharesdk 1.0.6 Download sharesdk 1.0.6 archive
1.0.5 Dec 19, 2018 Go to the documentation of sharesdk 1.0.5 Download sharesdk 1.0.5 archive
1.0.4 Dec 11, 2018 Go to the documentation of sharesdk 1.0.4 Download sharesdk 1.0.4 archive
1.0.3 Dec 11, 2018 Go to the documentation of sharesdk 1.0.3 Download sharesdk 1.0.3 archive
1.0.1 Dec 11, 2018 Go to the documentation of sharesdk 1.0.1 Download sharesdk 1.0.1 archive
1.0.0 Dec 10, 2018 Go to the documentation of sharesdk 1.0.0 Download sharesdk 1.0.0 archive
0.0.2 Nov 16, 2018 Go to the documentation of sharesdk 0.0.2 Download sharesdk 0.0.2 archive
0.0.1 Nov 16, 2018 Go to the documentation of sharesdk 0.0.1 Download sharesdk 0.0.1 archive
Popularity:
Describes how popular the package is relative to other packages. [more]
57
Health:
Code health derived from static analysis. [more]
100
Maintenance:
Reflects how tidy and up-to-date the package is. [more]
95
Overall:
Weighted score of the above. [more]
77
Learn more about scoring.

We analyzed this package on Feb 14, 2019, and provided a score, details, and suggestions below. Analysis was completed with status completed using:

  • Dart: 2.1.0
  • pana: 0.12.13
  • Flutter: 1.2.0

Platforms

Detected platforms: Flutter

References Flutter, and has no conflicting libraries.

Health suggestions

Fix lib/sharesdk_interface.dart. (-0.50 points)

Analysis of lib/sharesdk_interface.dart reported 1 hint:

line 86 col 10: Don't explicitly initialize variables to null.

Maintenance suggestions

Homepage URL is insecure. (-5 points)

Update the homepage field and use a secure (https) URL.

Dependencies

Package Constraint Resolved Available
Direct dependencies
Dart SDK >=2.0.0-dev.68.0 <3.0.0
flutter 0.0.0
Transitive dependencies
collection 1.14.11
meta 1.1.6 1.1.7
sky_engine 0.0.99
typed_data 1.1.6
vector_math 2.0.8