I\'ve been having some trouble implementing eSIM into an existing iOS carrier-application.
The setup
Apple documentation of class CTCellularPlanProvisioning which have supportsCellularPlan() instance function:
Overview
This class is only available to carrier apps with suitable entitlements.
Therefore we need to request for eSIM entitlement using developer account. Manual can be found here.
So... after a lot of trial an error I was able to solve this little issue.
There are 2 things to know about supportsCellularPlan()
(other then having the eSIM entitlements of course).
First:
You need to have WiFi enabled for it to work as it seems to need to connect with Apple for some checks.
Second:
It requires the CarrierDescriptors
to be entered correctly in your info.plist
as it is carrier-bound.
Once you have that, it should work as expected.