I changed my App store account and it can be reproduced.
1. Log in with the appstore account in the United States and download app from the appstore
2. After changing the account number of Saudi Arabia, the list of commodities cannot be read normally
Did you ask support to take a look?
Did you file bugs to see what comes back?
You are describing two different problems:
1) response.products.count == 0
2) SKProduct.price.floatValue == 0.0,
which is it?
also....I am not sure that "SKProduct.price.floatValue == 0.0" is the correct issue.
in ObjectiveC it would be [[[response.products objectAtIndex:iCount] price] floatValue]
where response is an SKProductsResponse object
If your product count is 0 then there is no price.
It is possible that none of your IAPs are available in certain countries (no gambling allowed in some countries; no free communications allowed in others) and that would result in a zero product count.