merchantkit icon indicating copy to clipboard operation
merchantkit copied to clipboard

WatchOS support?

Open tkafka opened this issue 4 years ago • 3 comments

Hello, I'd love to use MerchantKit on WatchOS as well, but WatchOS doesn't have SystemConfiguration (so the whole NetworkAvailabilityCenter class is unusable there).

I tried at least building MerchantKit for WatchOS (apparently it needs either a new target, or somehow adding support for a WatchOS into existing tsrget), but I am not experienced enough to make it work.

tkafka avatar Apr 07 '21 14:04 tkafka

It wouldn't be that hard to make the code that uses NetworkAvailabilityCenter conditionally available on supported platforms only, it's a minor utility rather than essential to the framework. This would get it compiling for watchOS at least — but the main reason I haven't declared watchOS support is I haven't tested on that platform at all. I have no idea if there any weird edge-cases in behaviour.

benjaminmayo avatar Apr 07 '21 14:04 benjaminmayo

If you want to help, you can make a fork of the codebase, comment out all the NetworkAvailabilityCenter dependent stuff and build your app, you can give it a spin and LMK if there is any weirdness.

benjaminmayo avatar Apr 07 '21 14:04 benjaminmayo

@tkafka @benjaminmayo

Please check https://github.com/Reiszecke/merchantkit/commit/a85273c76320026764125ba4feed16e06025f06d

We could also create a new target like you did with macOS but I think these 8 lines aren't worth it. Haven't tested on real device yet because that's always a pain in the ass with watchOS but it builds on Simulator at least.

@benjaminmayo sorry for the double-tag: I'm a SwiftyStoreKit refugee because some open issues in SwiftyStoreKit regarding auto-renewing subscriptions scare me. Do you work with those in production, are there known issues?

I am especially concerned about https://github.com/bizz84/SwiftyStoreKit/issues/603 and another issue where someone is not able to "re-engage" their expired auto-renewable-subscription in SwiftyStoreKit so the user has to visit the App Store to renew the subscription. Can you comment on this? Thank you for your time

Reiszecke avatar Oct 09 '21 12:10 Reiszecke