little-snow-fox / react-native-wechat-lib

🚀 WeChat login, share, favorite and payment for React-Native on iOS and Android
MIT License
666 stars 129 forks source link

RN 0.71, ios正常,安卓编译报错,请问大佬如何解决? #244

Closed bobacCurry closed 1 year ago

bobacCurry commented 1 year ago

image

/Users/alex/Project/MH/android/app/src/main/java/com/mh/wxapi/WXEntryActivity.java:4: 错误: 程序包com.wechatlib不存在 import com.wechatlib.WeChatLibModule; ^ /Users/alex/Project/MH/android/app/src/main/java/com/mh/MainApplication.java:17: 错误: 程序包com.wechatlib不存在 import com.wechatlib.WeChatLibPackage; ^ /Users/alex/Project/MH/android/app/src/main/java/com/mh/wxapi/WXEntryActivity.java:10: 错误: 找不到符号 WeChatLibModule.handleIntent(getIntent()); ^ 符号: 变量 WeChatLibModule 位置: 类 WXEntryActivity /Users/alex/Project/MH/android/app/src/main/java/com/mh/MainApplication.java:36: 错误: 找不到符号 packages.add(new WeChatLibPackage()); ^ 符号: 类 WeChatLibPackage 注: /Users/alex/Project/MH/android/app/src/debug/java/com/mh/ReactNativeFlipper.java使用或覆盖了已过时的 API。 注: 有关详细信息, 请使用 -Xlint:deprecation 重新编译。 4 个错误

FAILURE: Build completed with 2 failures.

1: Task failed with an exception.

2: Task failed with an exception.

BUILD FAILED in 23s

error Failed to install the app. Make sure you have the Android development environment set up: https://reactnative.dev/docs/environment-setup. Error: Command failed: ./gradlew app:installDebug -PreactNativeDevServerPort=8081 注: /Users/alex/Project/MH/node_modules/@react-native-camera-roll/camera-roll/android/src/main/java/com/reactnativecommunity/cameraroll/CameraRollModule.java使用或覆盖了已过时的 API。 注: 有关详细信息, 请使用 -Xlint:deprecation 重新编译。 注: /Users/alex/Project/MH/node_modules/@react-native-camera-roll/camera-roll/android/src/main/java/com/reactnativecommunity/cameraroll/CameraRollPackage.java使用了未经检查或不安全的操作。 注: 有关详细信息, 请使用 -Xlint:unchecked 重新编译。 /Users/alex/Project/MH/android/app/src/main/java/com/mh/wxapi/WXEntryActivity.java:4: 错误: 程序包com.wechatlib不存在 import com.wechatlib.WeChatLibModule; ^ /Users/alex/Project/MH/android/app/src/main/java/com/mh/MainApplication.java:17: 错误: 程序包com.wechatlib不存在 import com.wechatlib.WeChatLibPackage; ^ /Users/alex/Project/MH/android/app/src/main/java/com/mh/wxapi/WXEntryActivity.java:10: 错误: 找不到符号 WeChatLibModule.handleIntent(getIntent()); ^ 符号: 变量 WeChatLibModule 位置: 类 WXEntryActivity /Users/alex/Project/MH/android/app/src/main/java/com/mh/MainApplication.java:36: 错误: 找不到符号 packages.add(new WeChatLibPackage()); ^ 符号: 类 WeChatLibPackage 注: /Users/alex/Project/MH/android/app/src/debug/java/com/mh/ReactNativeFlipper.java使用或覆盖了已过时的 API。 注: 有关详细信息, 请使用 -Xlint:deprecation 重新编译。 4 个错误

FAILURE: Build completed with 2 failures.

1: Task failed with an exception.

bobacCurry commented 1 year ago

我是用的是1.1.27版本image

qqakashi commented 1 year ago

装3.0.4版本

bobacCurry commented 1 year ago

嗯呢,安装成最新的了,我发现问题在于安卓那边的文档没有更新,引入的包名不是叫那个名字,我去node_mudules找到项目,在项目的readme 看到正确的引入了> 装3.0.4版本

little-snow-fox commented 1 year ago

很可能是 gradle 没拉取到 wechatSDK,用为新版本不再引用本地 SDK,而是根据微信官方文档使用 gradle 自动拉取

bobacCurry commented 1 year ago

嗯呢,是这个原因,我把引入的包换了就没问题了,您的文档可以备注一下这个情况🫰> 很可能是 gradle 没拉取到 wechatSDK,用为新版本不再引用本地 SDK,而是根据微信官方文档使用 gradle 自动拉取

yylingsj commented 1 year ago

包名应该是哪个呢?我也遇到这个问题了。

bobacCurry commented 1 year ago

包名应该是哪个呢?我也遇到这个问题了。

安卓不是加了个文件嘛,wxapi/WXEntryActivity 这个,里面的类 WeChatModule, 用这个包名 com.theweflex.react.WeChatModule

image
DingTianYi9 commented 1 year ago

你好 我IOS 爆这个错误 跟您也是一样 0.71版本 请问您有遇到过吗

image
bobacCurry commented 1 year ago

你好 我IOS 爆这个错误 跟您也是一样 0.71版本 请问您有遇到过吗

image

安装最新的版本就好了

DingTianYi9 commented 1 year ago

是 3.0.4版本吗 ,我就是用的3.0.4版本 rn版本是0.71.6

bobacCurry commented 1 year ago

是 3.0.4版本吗 ,我就是用的3.0.4版本 rn版本是0.71.6

哦,不好意思,我看错了,我用的 1.1.27 版本

DingTianYi9 commented 1 year ago

1.1.27我也试了 也是其他的报错,我看issue上面大佬说换成3.0.4就好了,结果是这种错误。明天我再试试1.1.27,大佬你1.1.27IOS支付是可以的吗,感谢回复!

bobacCurry commented 1 year ago

1.1.27我也试了 也是其他的报错,我看issue上面大佬说换成3.0.4就好了,结果是这种错误。明天我再试试1.1.27,大佬你1.1.27IOS支付是可以的吗,感谢回复!

支付我还没测试,1.1.27支付有问题吗?

DingTianYi9 commented 1 year ago

1.1.27我也试了 也是其他的报错,我看issue上面大佬说换成3.0.4就好了,结果是这种错误。明天我再试试1.1.27,大佬你1.1.27IOS支付是可以的吗,感谢回复!

支付我还没测试,1.1.27支付有问题吗?

实际我现在引入这个库,按照作者大大教程配置连编译都没过

bobacCurry commented 1 year ago

1.1.27我也试了 也是其他的报错,我看issue上面大佬说换成3.0.4就好了,结果是这种错误。明天我再试试1.1.27,大佬你1.1.27IOS支付是可以的吗,感谢回复!

支付我还没测试,1.1.27支付有问题吗?

实际我现在引入这个库,按照作者大大教程配置连编译都没过

你明天用这个版本试试吧,我这边没问题,安卓的话,你按照他的文档配置会报错,那个问题我知道怎么解决

DingTianYi9 commented 1 year ago

嗯嗯 十分感谢!

DingTianYi9 commented 1 year ago

哥你好,我问下你的IOS AppDelegate.h文件 image 最开始是这样的吗 照着文档配置会变成我下面注释的那样,我才是这个原因导致的我编译不过

bobacCurry commented 1 year ago

哥你好,我问下你的IOS AppDelegate.h文件 image 最开始是这样的吗 照着文档配置会变成我下面注释的那样,我才是这个原因导致的我编译不过

import <React/RCTBridgeDelegate.h>

import <UIKit/UIKit.h>

import "WXApi.h"

@interface AppDelegate : UIResponder <UIApplicationDelegate, RCTBridgeDelegate, WXApiDelegate>

@property (nonatomic, strong) UIWindow *window;

@end

这是我的配置

bobacCurry commented 1 year ago

import <React/RCTBridgeDelegate.h>

你看看是不是这个弄错了 #import <React/RCTBridgeDelegate.h>

DingTianYi9 commented 1 year ago

搞定了 把文档上的 一个UIResponder改成原来项目的就好了 image 测试了下微信支付没问题 ,现在去搞Android了 感谢

bobacCurry commented 1 year ago

搞定了 把文档上的 一个UIResponder改成原来项目的就好了

image

测试了下微信支付没问题 ,现在去搞Android了 感谢

Good 👍

erTongWang commented 7 months ago

包名应该是哪个呢?我也遇到这个问题了。

安卓不是加了个文件嘛,wxapi/WXEntryActivity 这个,里面的类 WeChatModule, 用这个包名 com.theweflex.react.WeChatModule

image

按照这个配置之后还是报错,楼主的意思是要把react-native-wechat-lib 这个库升级到3.0.4吗