use*_*225 5 localization objective-c in-app-purchase ios ios-simulator
如何在iOS模拟器中更改应用内priceLocale产品的本地化?我总是得到欧元价格,但无法将其兑换成美元。
例子:
- (void)productsRequest:(SKProductsRequest *)request didReceiveResponse:(SKProductsResponse *)response
{
NSArray *Books = response.products;
if ([SKPaymentQueue canMakePayments] && [response.products count]>0) {
}
for (SKProduct *book in Books) {
NSLocale *locat=[NSLocale currentLocale];
NSString *strlocate=[locat objectForKey:NSLocaleCountryCode];
NSLog(@"\n\n\n Device country== %@ \n\n\n",strlocate);
NSLocale* storeLocale = book.priceLocale;
NSString *storeCountry = (NSString*)CFLocaleGetValue((CFLocaleRef)storeLocale, kCFLocaleCountryCode);
NSLog(@"\n\n\n Store country== %@ \n\n\n",storeCountry);
}
}
Run Code Online (Sandbox Code Playgroud)
设备国家/地区== 美国
商店国家== DE(始终是DE,我无法更改它)
iOS模拟器无法选择当前的AppStore。iOS模拟器中AppStore选择国家的问题有什么解决办法吗?
首先,模拟器根本不支持商店。您真的确定在 iOS 模拟器(在 Mac 上运行的应用程序)中运行此程序吗?
价格区域设置实际上是由您所使用的 Apple ID 的商店国家/地区决定的,因为这是用户计费的货币。因此,您不能强制执行“始终以美元显示”或类似的内容(只需更改货币符号)显然是错误的)。
但对于开发来说,您可以更改沙盒帐户的货币(或者更好的是:创建一个新帐户,以便可以使用不同的货币进行测试)。请参阅《iTunes Connect 开发人员指南》中的“查看、编辑和删除 iTunes Connect 用户”部分:
设置您的首选货币
- 单击页面右上角您的姓名。
- 选择个人详细信息。
- 从首选货币下拉列表中选择您所需的货币。
- 单击“保存”。