我是世博会的新手,但到目前为止,不需要打开Android / Xcode就可以在本地运行我的应用程序了。不用去碰那些东西就能让它更方便开发。
然而,我想在我的应用程序中包含应用程序购买(订阅),从我迄今为止所做的研究来看,世博的解决方案(https://docs.expo.io/versions/latest/sdk/in-app-purchases/)似乎还没有得到很好的开发。
我在应用程序购买中找到了这个npm包,它看起来很有前途:https://github.com/dooboolab/react-native-iap。然而,它没有支持世博,我觉得这是不值得放弃所有的好处,世博会只是为了这一功能。
我在这里注意到一个很有趣的评论:https://github.com/dooboolab/react-native-iap/issues/174#issuecomment-393704277
这个人建议我可以继续使用世博的master分支,然后按照这些步骤在时间准备好的时候弹出并部署。我从来没有这样做过,但我想知道这是否可行:
On master
1)运行npm install --save react-native-iap,但不运行react-native link react-native-iap。
2)使用此代码包装我的In模块。这样,当调用IAP方法时,代码就不会崩溃。
import { NativeModules } from 'react-native';
const { RNIapModule } = NativeModules;
function hasIAP() {
return !!NativeModules.RNIapModule;
}3)继续使用世博会进行开发,如果使用!hasIAP(),只需跳过IAP的内容
用于最终QA /部署的独立分支上的:
1)创建一个名为detached的新分支
2)运行expo eject
3)运行react-native link react-native-iap和下面列出的所有其他手动安装步骤:https://github.com/dooboolab/react-native-iap#manual-installation
( 4)质量保证
5)部署
有没有人有经验做这种混合的“博览会为发展,没有博览会为生产”的方法?
发布于 2019-08-06 04:27:18
如果弹出并使用Expo,则可以将其用作默认的React-native项目。创建了Android文件夹和iOS文件夹,您将在创建它们之前输入相应的包名。当您弹出Expo时,您已经安装的模块和Expo中的模块将添加到包列表中。检查MainApplication.java中的Android或iOS的Info.list文件。有一些东西不适用于App.json设置,这些设置是在您弹出Expo之后负责设置的。它可以通过参考正式文件来建立。
一旦Expo被弹出,React-native link命令就会执行得非常出色。
弹出Expo不会改变或从模块使用中消失
https://stackoverflow.com/questions/57368172
复制相似问题