wix/AppleSimulatorUtils

iOS 16: Set health permissions isn't working (error)

asafkorem opened this issue · 6 comments

As addressed in wix/Detox#3597 (comment)

Apparently, Apple has renamed the bundle_id with udId in this sources table.
image

See https://github.com/wix/AppleSimulatorUtils/blob/master/applesimutils/applesimutils/SetHealthKitPermission.m#L77

In order to fix this error, we need to replace bundle_id field key in the query with udId, only for devices with iOS >= 16 or to ignore the DB error (and query with both field names, using a try-catch mechanism).

I've started looking in to this. I forked this repo and now I'm trying to find out how to test this locally? How do I make the detox package use my forked package and not the package from brew?

@asafkorem fixing this seems a bit more complicated than that. uuid already existed in older versions and is not related to the bundle_id. The bundle_id info was moved to a new table, logical_sources, and now sources has a new column logical_source_id
Screenshot 2022-10-26 at 16 31 36
Screenshot 2022-10-26 at 16 32 26

I'll try to submit a fix shortly

Done, tested it locally, and seems fine, I just couldn't test the delete transaction as I don't know how to replicate it.

@asafkorem if you could review/merge it asap this would help me a lot, thanks :)

Hey @alarm109, thanks for pointing on the fact that we don't have any contribution guide.
I just added one, in case you are still looking for help with testing any local changes: https://github.com/wix/AppleSimulatorUtils/blob/master/CONTRIBUTING.md.

ASU v0.9.8 released with the mentioned fix. Thanks @GGGava!