在Mac App Store的Electron应用程序中实现应用程序内购买

Hol*_*bæk 9 in-app-purchase node.js mac-app-store electron

我环顾四周,似乎有几个人有这个问题,但似乎没有人解决它:

将Apple应用内购买添加到Electron HTML/JS应用

https://github.com/electron/electron/issues/3745

https://discuss.atom.io/t/osx-in-app-purchases-in-electron/22885

有人建议使用此Node到Objective-C桥来执行此操作:

https://github.com/TooTallNate/NodObjC

其他人建议使用这个应用内库,但从我所看到的,它只验证收据:

https://github.com/voltrue2/in-app-purchase

有没有人真正设法在Mac App Store的Electron应用程序中实现应用内购买?

你是怎么做到的?

如果没有人这样做,那根本不可能吗?

use*_*828 4

更新

最后,我直接向 Electron 添加了应用内购买。

请参阅https://electronjs.org/docs/tutorial/in-app-purchases


第一个解决方案

我已经实现了这个解决方案,并且它正在开发中(尚未在生产中进行测试)。

  1. 使用 Xcode 创建一个执行应用内购买的 MacOS 应用程序 (InAppPurchase)(请参阅https://developer.apple.com/library/content/documentation/NetworkingInternet/Conceptual/StoreKitGuide/Introduction.html
  2. InAppPurchase.app放在Electron 应用程序文件夹中的某个位置
  3. 在您的 Electron 应用程序中使用require('electron').shell.openItem或 来require('child_process').spawn('./InAppPurchase.app/Contents/MacOS/InAppPurchase');开始应用内购买。

这绝对不是一个干净的解决方案,但它似乎有效......

第二种解决方案

我认为用NodObjC也可以完成。然而,与第一个解决方案相比,这个库非常重。

第三种解决方案

直接向 Electron 添加应用内购买。


如果我可以通过 IAP 在 Mac Apple Store 上发布我的 Electron 应用程序或者找到其他解决方案,我会随时通知您。