Hector-Chong / expo-native-wechat

A Expo Module for supporting Wechat APIs on Android and iOS
https://native-wechat.hector.im
12 stars 2 forks source link

expo 运行起来报 Cannot native module 'ExpoNativeWechat' #2

Closed 418442040 closed 3 weeks ago

418442040 commented 4 weeks ago

我的项目是expo,我通过npx expo install expo-native-wechat安装了此库,导入库并且注册就报错了,不知是哪出了问题?

Hector-Chong commented 4 weeks ago

请提供完整的错误输出。

418442040 commented 4 weeks ago

expo版本:51, reactnative版本:0.74.2

第一步: npx expo install expo-native-wechat (正常安装成功) 第二步: import { registerApp } from "expo-native-wechat"; 第三步: useEffect(() => { return registerApp("wxxxxxxxx"); }, []);

然后npx expo start 运行起来就报错如下图:

微信图片_20240624111152

402d315880c8cdcb3af204725b671f8

Hector-Chong commented 4 weeks ago

很抱歉,我未复现此问题。请问是否重新 Prebuild 了工程?

418442040 commented 4 weeks ago

很抱歉,我没有复现此问题。请问是否重新 Prebuild 了工程?

我直接expo run android可以吗?还是一定要Prebuild ?

418442040 commented 4 weeks ago

很抱歉,我未复现此问题。请问是否重新 Prebuild 了工程?

我找到问题了,应该是和另外一个微信api的库冲突了,我卸载了那个库就好了!现在是我调用支付api了,但是没有任何的反应,我也不知道是什么问题导致的,不知是参数的问题还是其他的问题,expo应该不需要自己去编辑安卓文件里的代码吧?

Hector-Chong commented 4 weeks ago

你能否使用 Android Studio 运行你的工程,并记录 Logcat 返回的日志?这可以帮助我排查问题。

418442040 commented 3 weeks ago

您是否使用 Android Studio 运行你的工程,并记录 Logcat 返回的日志?这探索我排查问题。

你好,我现在执行支付方法会报错弹出提示应用签名与开放平台不一致,可是我在uniapp上面打包一个一个apk用来测试支付是正常的,包名和reactnative的包名是一样的,因为签名是通过包名转换过来的,所以包名对了一般是能唤醒支付的,我不知道为什么在reactnative当中会报这个问题,我检查了微信的appid也都是没错的

418442040 commented 3 weeks ago

你能否使用 Android Studio 运行你的工程,并记录 Logcat 返回的日志?这可以帮助我排查问题。

我刚刚试着把微信重新卸载安装,然后再次调用就可以弹出支付了,但是无论我是取消支付还是支付成功回来,想要再次唤醒支付又会报错弹出提示应用签名与开放平台不一致,然后我试着再重新安装微信又可以唤醒支付了,然后想要再次调用又会提示错误,请问这是我微信的问题还是您开发的这个包的问题?

418442040 commented 3 weeks ago

找到问题了,需要证书,包名,开放平台签名都一致性