首页 > 其他 > 详细

flutter sharesdk实现跨平台分享

时间:2020-03-25 11:37:41      阅读:250      评论:0      收藏:0      [点我收藏+]

flutter sharesdk实现跨平台分享

 
flutter端

1.依赖sharesdk。

https://pub.dartlang.org/packages/sharesdk中下载sharesdk1.0.8demo,并将其放入我们的项目中本地引用。这里我将其放入plugins目录下。
添加下列代码到pubspec.yaml进行本地引用:

dependencies:
  sharesdk: 
    path: plugins/sharesdk-1.0.8

2.安装。

在flutter 中使用下列命令来安装:

$ flutter packages get

3.使用它。

现在你可以在Dart代码中使用sharesdk。
下面我们在main.dart中来实现微信分享功能:

import ‘package:flutter/material.dart‘;
import ‘package:flutter/cupertino.dart‘;
import ‘package:sharesdk/sharesdk.dart‘;

void main() => runApp(ShareApp());

class ShareApp extends StatefulWidget {
  
android端

1.重新mobsdk.gradle文件来选择你需要使用的平台,我们这里只使用了微信。

apply plugin: ‘com.mob.sdk‘

MobSDK {
    appKey "2a6869394af80"
    appSecret "796421d6838fe1ecbef3b419d2c2bcb0"

    ShareSDK {
        //平台配置信息
        devInfo {

            Wechat {
                appId "wxcb24d644e340e9cc"
                appSecret "34a7656f86280f75e16cd9094a8a1f54"
            }
        }
    }
}

2.在Manifest清单文件中配置:tools:replace="android:name"

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    package="你的包名">
<application
   android:name = ".MyApplication"
   tools:replace="android:name">

3.编译过程中报错如下:

 

 
技术分享图片
报错.png

 

屏蔽掉报错的内容即可!如果需要使用QQ,需把相应的代码还原!

注意:如果跳转不到微信,请注意包名以及keystore是否与微信开放平台中的注册信息一致。

iOS端

1.自定义需要导入的分享平台.
目前我们只加入了微信分享功能,所以需要重新编辑 sharesdk.podspec 文件设置 dependency。

#
# 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      = <<-DESC
ShareSDK is the most comprehensive Social SDK in the world,which share easily with 40+ platforms.
                       DESC
  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

2.在项目工程的Info.plist 中如图增加 MOBAppKey 和 MOBAppSecret 两个字段。

 

 
技术分享图片
info.png

3.添加微信url scheme。

 

 
技术分享图片
scheme.png

 

4.配置白名单。

 

 
技术分享图片
白名单.png

效果图:

 

 
技术分享图片
效果图1.jpeg

 

 
技术分享图片
效果图2.jpeg

flutter sharesdk实现跨平台分享

原文:https://www.cnblogs.com/zxh1919/p/12564545.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!