RxReader / weibo_kit

Flutter版新浪微博登录/分享
Apache License 2.0
105 stars 33 forks source link

ios接入项目报错 #56

Closed JiangJuHong closed 1 year ago

JiangJuHong commented 1 year ago

操作系统:MacOS 13 Ventura 运行环境:iPhone12 真实设备 IOS 16.1 编译软件:Xcode 14 问题描述:项目 Example 能够正常运行,将 4.0.03.1.0引入项目后,出现错误信息,无引入该插件时能正常运行。大佬这个问题有遇到过类似的吗?有解决办法或推荐的排查方向吗

  ld: warning: Could not find or use auto-linked framework 'DownloadProxyFramework'
  Undefined symbols for architecture arm64:
    "_OBJC_CLASS_$_WBAuthorizeRequest", referenced from:
        objc-class-ref in weibo_kit(WeiboKitPlugin.o)
    "_OBJC_CLASS_$_WBAuthorizeResponse", referenced from:
        objc-class-ref in weibo_kit(WeiboKitPlugin.o)
    "_OBJC_CLASS_$_WBImageObject", referenced from:
        objc-class-ref in weibo_kit(WeiboKitPlugin.o)
    "_OBJC_CLASS_$_WBMessageObject", referenced from:
        objc-class-ref in weibo_kit(WeiboKitPlugin.o)
    "_OBJC_CLASS_$_WBSendMessageToWeiboRequest", referenced from:
        objc-class-ref in weibo_kit(WeiboKitPlugin.o)
    "_OBJC_CLASS_$_WBSendMessageToWeiboResponse", referenced from:
        objc-class-ref in weibo_kit(WeiboKitPlugin.o)
    "_OBJC_CLASS_$_WBWebpageObject", referenced from:
        objc-class-ref in weibo_kit(WeiboKitPlugin.o)
    "_OBJC_CLASS_$_WeiboSDK", referenced from:
        objc-class-ref in weibo_kit(WeiboKitPlugin.o)
  ld: symbol(s) not found for architecture arm64
zahkeJiang commented 1 year ago

我也是一样的问题,升级flutter 2.17 weibo_kit 4.0.0 就会有这个问题, 之前weibo_kit 3.1.0 就没问题

zzg19901210 commented 1 year ago

我记得这个错误好像是在哪里加一个arm64的配置就可以了

JiangJuHong commented 1 year ago

我记得这个错误好像是在哪里加一个arm64的配置就可以了

尝试过对应的方法,暂时无效

zzg19901210 commented 1 year ago

我记得这个错误好像是在哪里加一个arm64的配置就可以了

尝试过对应的方法,暂时无效

好吧,我今天是突然出了一下architecture x86_64的错误 之前我报你这个错误加了 podfile加了一个这个就可以 config.build_settings["EXCLUDED_ARCHS[sdk=iphonesimulator*]"] = "arm64,i386"

zzg19901210 commented 1 year ago

移除SDK就可以了

DspringL commented 1 year ago

系统环境: Flutter SDK:3.3.5 MAC OS:Ventura 13.0.1 Xcode:14.1

weibo_kit:3.1.0 或4.0.0 均打包出现下列错误,config.build_settings['EXCLUDED_ARCHS'] = 'arm64' 配置了也无效

ld: warning: Could not find or use auto-linked framework 'DownloadProxyFramework' Undefined symbols for architecture arm64: "_OBJCCLASS$_WBAuthorizeRequest", referenced from: objc-class-ref in weibo_kit(WeiboKitPlugin.o) "_OBJCCLASS$_WBAuthorizeResponse", referenced from: objc-class-ref in weibo_kit(WeiboKitPlugin.o) "_OBJCCLASS$_WBImageObject", referenced from: objc-class-ref in weibo_kit(WeiboKitPlugin.o) "_OBJCCLASS$_WBMessageObject", referenced from: objc-class-ref in weibo_kit(WeiboKitPlugin.o) "_OBJCCLASS$_WBSendMessageToWeiboRequest", referenced from: objc-class-ref in weibo_kit(WeiboKitPlugin.o) "_OBJCCLASS$_WBSendMessageToWeiboResponse", referenced from: objc-class-ref in weibo_kit(WeiboKitPlugin.o) "_OBJCCLASS$_WBWebpageObject", referenced from: objc-class-ref in weibo_kit(WeiboKitPlugin.o) "_OBJCCLASS$_WeiboSDK", referenced from: objc-class-ref in weibo_kit(WeiboKitPlugin.o) ld: symbol(s) not found for architecture arm64

Error (Xcode): Undefined symbol: _OBJCCLASS$_WBAuthorizeRequest

Error (Xcode): Undefined symbol: _OBJCCLASS$_WBAuthorizeResponse

Error (Xcode): Undefined symbol: _OBJCCLASS$_WBImageObject

Error (Xcode): Undefined symbol: _OBJCCLASS$_WBMessageObject

Error (Xcode): Undefined symbol: _OBJCCLASS$_WBSendMessageToWeiboRequest

Error (Xcode): Undefined symbol: _OBJCCLASS$_WBSendMessageToWeiboResponse

Error (Xcode): Undefined symbol: _OBJCCLASS$_WBWebpageObject

Error (Xcode): Undefined symbol: _OBJCCLASS$_WeiboSDK

HQL571 commented 1 year ago

你好,请问这个问题有得到解决吗?我也遇到同样问题

chiluo commented 1 year ago

同问,有解决办法吗

droplet-js commented 1 year ago

@chiluo @HQL571 你们似乎是忘记正确打开问题的标准姿势 ...

# 已知,插件的 Example 编译并不存在任何问题,那么如果你想插件作者帮忙解决这个问题的最佳做法,是让作者也遇到这个问题。而作者一直没有回答这个问题的直接原因是,作者一直木有遇到问题。那么该怎么让作者帮忙呢?有没有一种可能,提供个 Demo?然后作者很快就会给你们回答呢?
droplet-js commented 1 year ago

唉 ... 真的是 ... 一点都不用心 ...

chiluo commented 1 year ago

找到问题了,4.0.0中引用了Weibo_SDK 3.3.5导致报错, https://github.com/sinaweibosdk/weibo_ios_sdk/issues/508 可以看到相关问题。

临时解决方案为在weibo_kit.podspec中 sp.dependency 'Weibo_SDK', '~> 3.3.0' 改为 sp.dependency 'Weibo_SDK', '3.3.0'即可。

个人认为最开始的问题已经描述很清楚了,新项目只要引入4.0.0就会报错。

HQL571 commented 1 year ago

找到问题了,4.0.0中引用了Weibo_SDK 3.3.5导致报错, sinaweibosdk/weibo_ios_sdk#508 可以看到相关问题。

临时解决方案为在weibo_kit.podspec中 sp.dependency 'Weibo_SDK', '~> 3.3.0' 改为 sp.dependency 'Weibo_SDK', '3.3.0'即可。

个人认为最开始的问题已经描述很清楚了,新项目只要引入4.0.0就会报错。

已参照你的分享设置了SDK, 我将3.3.5修改为3.3.0即可,感激不尽!

droplet-js commented 1 year ago

找到问题了,4.0.0中引用了Weibo_SDK 3.3.5导致报错, sinaweibosdk/weibo_ios_sdk#508 可以看到相关问题。 临时解决方案为在weibo_kit.podspec中 sp.dependency 'Weibo_SDK', '~> 3.3.0' 改为 sp.dependency 'Weibo_SDK', '3.3.0'即可。 个人认为最开始的问题已经描述很清楚了,新项目只要引入4.0.0就会报错。

已参照你的分享设置了SDK, 我将3.3.5修改为3.3.0即可,感激不尽!

正确的打开方式

# 修改 Podfile,而非修改插件
target 'Runner' do
  flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__))

  pod 'Weibo_SDK', '3.3.0'
end