Giter Site home page Giter Site logo

sharesdk-for-flutter's Introduction

sharesdk-for-flutter's People

Contributors

1019238091 avatar dangerousdon avatar lishuzhi1121 avatar moblarry avatar o2space avatar vhbvb avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

sharesdk-for-flutter's Issues

Android上显示20多个平台,ios上只显示配置的微信平台

问题描述:
1、项目里面只配置了微信朋友圈和微信会话,在ios上显示正常,在android上显示很多平台,
2、android上显示很多平台,点击朋友圈或者微信会话分享时,先弹出进入后台,然后弹出分享失败。QQ和QQ空间正常(虽然没有配置)

android上menu菜单
WechatIMG15

mobsdk.gradle配置
161554776473_ pic

封装的微信分享逻辑(只有微信分享)
171554776550_ pic_hd

pod error: incude static binaries

Installing MOBFoundation (3.2.0)
Using firebase_auth (0.0.1)
Using firebase_core (0.0.1)
Using flutter_facebook_login (0.0.1)
Using google_sign_in (0.0.1)
Installing mob_sharesdk (4.2.0)
Using nanopb (0.3.901)
Installing sharesdk (0.0.1)
[!] The 'Pods-Runner' target has transitive dependencies that include static binaries: (/Users/chenbin/geproject/Client/GEP_Flutter/gep/ios/Pods/mob_sharesdk/SDK/ShareSDK/ShareSDK.framework, /Users/chenbin/geproject/Client/GEP_Flutter/gep/ios/Pods/mob_sharesdk/SDK/ShareSDK/Support/Required/ShareSDKConnector.framework, /Users/chenbin/geproject/Client/GEP_Flutter/gep/ios/Pods/mob_sharesdk/SDK/ShareSDK/Support/PlatformConnector/FacebookConnector.framework, /Users/chenbin/geproject/Client/GEP_Flutter/gep/ios/Pods/mob_sharesdk/SDK/ShareSDK/Support/PlatformSDK/QQSDK/TencentOpenAPI.framework, /Users/chenbin/geproject/Client/GEP_Flutter/gep/ios/Pods/mob_sharesdk/SDK/ShareSDK/Support/PlatformConnector/QQConnector.framework, /Users/chenbin/geproject/Client/GEP_Flutter/gep/ios/Pods/mob_sharesdk/SDK/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/libWeiboSDK.a, /Users/chenbin/geproject/Client/GEP_Flutter/gep/ios/Pods/mob_sharesdk/SDK/ShareSDK/Support/PlatformConnector/SinaWeiboConnector.framework, /Users/chenbin/geproject/Client/GEP_Flutter/gep/ios/Pods/mob_sharesdk/SDK/ShareSDK/Support/PlatformConnector/TwitterConnector.framework, /Users/chenbin/geproject/Client/GEP_Flutter/gep/ios/Pods/mob_sharesdk/SDK/ShareSDK/Support/PlatformSDK/WeChatSDK/libWeChatSDK.a, /Users/chenbin/geproject/Client/GEP_Flutter/gep/ios/Pods/mob_sharesdk/SDK/ShareSDK/Support/PlatformConnector/WechatConnector.framework, and /Users/chenbin/geproject/Client/GEP_Flutter/gep/ios/Pods/mob_sharesdk/SDK/ShareSDK/Support/Optional/ShareSDKUI.framework)

'ShareSDK/ShareSDK.h' file not found

/Users/hevan/.pub-cache/hosted/pub.flutter-io.cn/sharesdk-1.1.0/ios/Classes/SharesdkPlugin.m:2:9: fatal error: 'ShareSDK/ShareSDK.h' file not found
#import <ShareSDK/ShareSDK.h>

demo太过陈旧项目结构与实际不符

demo太过陈旧项目结构与实际不符,在android目录下通常会有app,按你的demo来看的话要我们改造的成本比较大。建议,写常规demo不要个性化

现在这个插件能用吗???

微信\QQ的登录\分享\支付等都提示包名不对,但是确定包名肯定是没问题的.平台上的社会化平台设置也设置了..

android Utils报错

我修改MobSDK.gradle 只保留4个。
你们的Utils类 用到了 Facebook Twitter WeChat WeChatMonments QQ。 我只需要Facebook Twitter sinaWebo WeChat。
编译的时候我没用到的 WeChatMonments QQ 在Utils用到了的报错了。

https://github.com/MobClub/ShareSDK-For-Flutter/blob/master/android/src/main/java/com/yoozoo/sharesdk/Utils.java

/Users/yzw/.pub-cache/hosted/pub.dartlang.org/sharesdk-1.0.9/android/src/main/java/com/yoozoo/sharesdk/Utils.java:7: 错误: 程序包cn.sharesdk.tencent.qq不存在
import cn.sharesdk.tencent.qq.QQ;
                             ^
/Users/yzw/.pub-cache/hosted/pub.dartlang.org/sharesdk-1.0.9/android/src/main/java/com/yoozoo/sharesdk/Utils.java:10: 错误: 程序包cn.sharesdk.wechat.moments不存在
import cn.sharesdk.wechat.moments.WechatMoments;
                                 ^
/Users/yzw/.pub-cache/hosted/pub.dartlang.org/sharesdk-1.0.9/android/src/main/java/com/yoozoo/sharesdk/Utils.java:57: 错误: 找不到符号
                return WechatMoments.NAME; //"wechatTimeline"
                       ^
  符号:   变量 WechatMoments
  位置: 类 Utils
/Users/yzw/.pub-cache/hosted/pub.dartlang.org/sharesdk-1.0.9/android/src/main/java/com/yoozoo/sharesdk/Utils.java:59: 错误: 找不到符号
                return QQ.NAME;
                       ^
  符号:   变量 QQ
  位置: 类 Utils

IOS上和微信支付插件冲突了,怎么解决冲突?

同时集成了 sharesdk 和 fluwx(微信支付插件),结果他们都有libwechatsdk.a。。。然后运行flutter run 就会报

target has libraries with conflicting names libwechatsdk.a

我在网上找到的解决方案是删除 libwechatsdk.a 文件,但是运行后又会报错提示没找到 libwechatsdk.a

请问该如何解决这个冲突?

android:attr/fontVariationSettings not found.

当前工程的compileSdkVersion 为27 和targetSdkVersion为27
但是国内外的应用商店都要求升级到28及以上,建议工程升级相应版本

工程的compileSdkVersion为27,用到的support包的版本为28,build编译时报错
android:attr/fontVariationSettings not found.
将compileSdkVersion和targetSdkVersion升级为28,问题解决。建议工程升级编译版本

MissingPluginException(No implementation found for method listen on channel JAVA_TO_FLUTTER)

会报如下错误:

flutter: ══╡ EXCEPTION CAUGHT BY SERVICES LIBRARY ╞══════════════════════════════════════════════════════════
flutter: The following MissingPluginException was thrown while activating platform stream on channel
flutter: JAVA_TO_FLUTTER:
flutter: MissingPluginException(No implementation found for method listen on channel JAVA_TO_FLUTTER)
flutter:
flutter: When the exception was thrown, this was the stack:
flutter: #0 MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:300:7)
flutter:
flutter: #1 EventChannel.receiveBroadcastStream. (package:flutter/src/services/platform_channel.dart:490:29)
flutter:
flutter: #6 ShareSDK.listenNativeEvent (package:sharesdk/sharesdk_interface.dart:16:10)

无法跳转到小程序

可以做分享 但是无法分享小程序 提示universal link验证失败 换回官方1861一切正常

Content is not allowed in prolog.

[Fatal Error] MobSDK-Impl-2019.0117.1008.pom:1:44: Content is not allowed in prolog.
[Fatal Error] MobSDK-Impl-2019.0117.1008.pom:1:44: Content is not allowed in prolog.

=== MobSDK 2019.0117.1025 ===

C:\Users\Administrator\AppData\Roaming\Pub\Cache\hosted\pub.flutter-io.cn\sharesdk-1.0.6\android\src\main\java\com\yoozoo\sharesdk\SharesdkPlugin.java:121: warning: [unchecked] unchecked cast
HashMap<String, Object> params = (HashMap<String, Object>) map.get("params");
^
required: HashMap<String,Object>
found: Object
C:\Users\Administrator\AppData\Roaming\Pub\Cache\hosted\pub.flutter-io.cn\sharesdk-1.0.6\android\src\main\java\com\yoozoo\sharesdk\SharesdkPlugin.java:123: warning: [unchecked] unchecked cast
HashMap<String, Object> platMap = (HashMap<String, Object>) params.get("@platform(" + num +")" );
^
required: HashMap<String,Object>
found: Object
C:\Users\Administrator\AppData\Roaming\Pub\Cache\hosted\pub.flutter-io.cn\sharesdk-1.0.6\android\src\main\java\com\yoozoo\sharesdk\SharesdkPlugin.java:219: warning: [unchecked] unchecked cast
HashMap<String, Object> params = (HashMap<String, Object>) map.get("params");
^
required: HashMap<String,Object>
found: Object
C:\Users\Administrator\AppData\Roaming\Pub\Cache\hosted\pub.flutter-io.cn\sharesdk-1.0.6\android\src\main\java\com\yoozoo\sharesdk\SharesdkPlugin.java:342: warning: [unchecked] unchecked cast
onComplete(msg.arg2, (HashMap<String, Object>) msg.obj);
^
required: HashMap<String,Object>
found: Object
C:\Users\Administrator\AppData\Roaming\Pub\Cache\hosted\pub.flutter-io.cn\sharesdk-1.0.6\android\src\main\java\com\yoozoo\sharesdk\StrUtils.java:21: warning: [unchecked] unchecked cast
sb.append(format(mySepStr, (HashMap<String, Object>)value));
^
required: HashMap<String,Object>
found: Object
C:\Users\Administrator\AppData\Roaming\Pub\Cache\hosted\pub.flutter-io.cn\sharesdk-1.0.6\android\src\main\java\com\yoozoo\sharesdk\StrUtils.java:23: warning: [unchecked] unchecked cast
sb.append(format(mySepStr, (ArrayList)value));
^
required: ArrayList
found: Object
6 warnings

auth()方法

auth()方法闪了一下 没进回调 不知道什么问题

小米手机:分享失败,也没有分享回调

 SharesdkPlugin.showMenu(
                                null,
                                    SSDKMap()
                                      ..setGeneral(
                                          "首页分享",
                                          "",
                                          //images
                                          [],
                                          //imageUrlAndroid
                                          null,
                                          //imagePathAndroid
                                          null,
                                          //url
                                          "https://baidu.com",
                                          //titleUrlAndroid
                                         null,
                                          //musicUrlAndroid
                                          null,
                                          //videoUrlAndroid
                                          null,
                                          SSDKContentTypes.webpage),
                                    (SSDKResponseState state,
                                        ShareSDKPlatform p,
                                        Map data,
                                        Map user,
                                        SSDKError err) {
                                  print(
                                      "showMenu --> $state $p $data $user $err");
                                });
W/System.err:System.err: java.lang.Throwable: sendReq checkArgs fail
W/System.err:     at cn.sharesdk.wechat.utils.i.a(WechatCore.java:60)
W/System.err:     at cn.sharesdk.wechat.utils.k.a(WechatHelper.java:752)
W/System.err:     at cn.sharesdk.wechat.utils.k.a(WechatHelper.java:301)
W/System.err:     at cn.sharesdk.wechat.utils.k.b(WechatHelper.java:115)
W/System.err:     at cn.sharesdk.wechat.friends.Wechat.doShare(Wechat.java:248)
W/System.err:     at cn.sharesdk.framework.f.b(PlatformImpl.java:282)
W/System.err:     at cn.sharesdk.framework.f$4.run(PlatformImpl.java:353)

小米手机
flutter doctor

[√] Flutter (Channel stable, v1.9.1+hotfix.4, on Microsoft Windows [Version 10.0.17134.1069], locale zh-CN)
    • Flutter version 1.9.1+hotfix.4 at D:\App\flutter
    • Framework revision cc949a8e8b (3 weeks ago), 2019-09-27 15:04:59 -0700
    • Engine revision b863200c37
    • Dart version 2.5.0

[!] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
    • Android SDK at D:/App/AndroidSdk
    • Android NDK location not configured (optional; useful for native profiling support)
    • Platform android-29, build-tools 28.0.3
    • ANDROID_HOME = D:/App/AndroidSdk
    • Java binary at: D:\Program Files\Android\Android Studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 1.8.0_202-release-1483-b03)
    ! Some Android licenses not accepted.  To resolve this, run: flutter doctor --android-licenses

[√] Android Studio (version 3.5)
    • Android Studio at D:\Program Files\Android\Android Studio
    • Flutter plugin version 40.2.2
    • Dart plugin version 191.8580
    • Java version OpenJDK Runtime Environment (build 1.8.0_202-release-1483-b03)

[√] Connected device (2 available)
    • MI PLAY                   • 49e7b9d20301  • android-arm64 • Android 8.1.0 (API 27)
    • Android SDK built for x86 • emulator-5554 • android-x86   • Android 9 (API 28) (emulator)

! Doctor found issues in 1 category.

设备未安装

IMG_2471

点击分享的时候报错如下~(微信客户端已经安装了)

auth()方法无法获取到用户数据

使用auth()方法请求微信授权,微信授权后没有获取到对应的用户信息,好像根本就没有进入到回调方法中,打印日志也是直接跳过了回调方法。

MissingPluginException

[ERROR:flutter/lib/ui/ui_dart_state.cc(148)] Unhandled Exception: MissingPluginException(No implementation found for method auth on channel com.yoozoo.mob/sharesdk)

想用微信登陆,配置都按照说明做的,在MobSDK.gradle里面配置了平台和key,登录的时候就报这个错误。
ShareSDK.auth(ShareSDKPlatforms.wechatSession, null, (SSDKResponseState state, Map user, SSDKError error){
print("login callback");
});

如果传ShareSDKPlatforms.qq 则可以打开qq的授权界面,但是授权后并没有回调。

有什么需要特殊处理的地方么?

而且我跑了一下项目里的example,点击微信授权,也是同样的问题。

没有安装微信客户端的时候警告 whose view is not in the window hierarchy!

如果App存在多个window 那么在没有安装微信客户端的情况下使用微信登录报异常,原因就是
WXUIWebViewControll 以及他的父级ViewControll没有加载到在前端window上;导致无法显示WXUIWebViewControll
Attempt to present <UINavigationController: 0x10ba0fa00> on <WXUIWebViewControll: 0x121394d40> whose view is not in the window hierarchy!

gradle配置

配置完之后,查看打包的apk文件,发现有两个Mob-AppSercet,其中有一个拼写错误的,是我自己申请的,另一个什么情况???另外说一点,flutter版本集成文档真的不行,乱七八糟,跟示例代码都不一样
image

升级到最新版,迁移到AndroidX,打包后登录不了,分享不了

微信登录报错 SharesdkPlugin: platName null ====> {platform=22}

分享报错 2019-12-31 17:17:23.442 8575-8575/? E/MethodChannel#com.yoozoo.mob/sharesdk: Failed to handle method call
java.lang.NullPointerException: Attempt to invoke virtual method 'void c.b.a.b.a(c.b.a.c)' on a null object reference
at d.f.a.a.h(Unknown Source:1042)
at d.f.a.a.onMethodCall(Unknown Source:180)
at io.flutter.plugin.common.MethodChannel$IncomingMethodCallHandler.onMessage(Unknown Source:17)
at io.flutter.embedding.engine.dart.DartMessenger.handleMessageFromDart(Unknown Source:57)
at io.flutter.embedding.engine.FlutterJNI.handlePlatformMessage(Unknown Source:4)
at android.os.MessageQueue.nativePollOnce(Native Method)
at android.os.MessageQueue.next(MessageQueue.java:326)
at android.os.Looper.loop(Looper.java:160)
at android.app.ActivityThread.main(ActivityThread.java:6898)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:537)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
2019-12-31 17:17:23.443 8575-8616/? E/flutter: [ERROR:flutter/lib/ui/ui_dart_state.cc(148)] Unhandled Exception: PlatformException(error, Attempt to invoke virtual method 'void c.b.a.b.a(c.b.a.c)' on a null object reference, null)
#0 StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:569)
#1 MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:316)

#2 SharesdkPlugin.share (package:sharesdk_plugin/sharesdk_interface.dart:48)
#3 DetailsActionsShare.shareToWechat (package:rong_c/pages/house/details_share/details_actions_share.dart:237)
#4 DetailsActionsShare._creatRow. (package:rong_c/pages/house/details_share/details_actions_share.dart:157)
#5 _InkResponseState._handleTap (package:flutter/src/material/ink_well.dart:654)
#6 _InkResponseState.build. (package:flutter/src/material/ink_well.dart:729)
#7 GestureRecognizer.invokeCallback (package:flutter/src/gestures/recognizer.dart:182)
#8 TapGestureRecognizer._checkUp (package:flutter/src/gestures/tap.dart:365)
#9 TapGestureRecognizer.acceptGesture (package:flutter/src/gestures/tap.dart:312)
#10 GestureArenaManager.sweep (package:flutter/src/gestures/arena.dart:156)
#11 GestureBinding.handleEvent (package:flutter/src/gestures/binding.dart:222)
#12 GestureBinding.dispatchEvent (package:flutter/src/gestures/binding.dart:198)
#13 GestureBinding._handlePointerEvent (package:flutter/src/gestures/binding.dart:156)
#14 GestureBinding._flushPointerEventQueue (package:flutter/src/gestures/binding.dart:102)
#15 GestureBinding._handlePointerDataPacket (package:flutter/src/gestures/binding.dart:86)
#16 _rootRunUnary (dart:async/zone.dart:1136)
#17 _CustomZone.runUnary (dart:async/zone.dart:1029)
#18 _CustomZone.runUnaryGuarded (dart:async/zone.dart:931)
#19 _invoke1 (dart:ui/hooks.dart:263)
#20 _dispatchPointerDataPacket (dart:ui/hooks.dart:172)

去掉不使用的平台

我只需要微信、qq、微博,所以用这个包需要:

  1. fork 这个仓库
  2. 去掉 podspec 不使用的平台
  3. 传到仓库
  4. flutter 中引用私有的仓库

为何不把平台拆分开,按需引入呢?这样多麻烦。

Release混淆后原生方法空调用

Release配置混淆后原生方法空调用。

[ERROR:flutter/lib/ui/ui_dart_state.cc(148)] Unhandled Exception: PlatformException(error, Attempt to invoke virtual method 'void b.a.a.b.a(b.a.a.c)' on a null object reference, null)
#0      StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:569)
#1      MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:316)
<asynchronous suspension>
#2      SharesdkPlugin.share (package:sharesdk_plugin/sharesdk_interface.dart:48)
#3      ShareAPI.share (package:test/apis/share_api.dart:58)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.