- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
最近,中国工业和信息化部 (MIIT) 要求在中国 App Store 上提供的所有应用程序中停用 CallKit 功能。在审核过程中,我们发现您的应用目前包含 CallKit 功能,并且在 iTunes Connect 中将中国列为可用地区。
现在,问题是下一步,应用中需要进行哪些更改
如果没有办法,我怎样才能从 Apple store 中删除瓷器。
如果有人遇到此类问题,请分享您的建议。
问候,
最佳答案
我对这个问题的处理方法受到了 Apple Developer forums 上的这个回应的启发。 .目前开发者的普遍共识似乎是 App Review 没有给出具体的建议,也没有解释或要求具体的技术解决方案。我认为只要你能向 App Review 解释你是如何为中国用户禁用 CallKit 的,那是可以接受的。
我在下面讨论时更新了我的应用程序,它首次通过了 App Store 审核,我们于 2018 年 7 月 24 日在中国重新发布。
"In this version and onwards, we do not use CallKit features for users in China. We detect the user's region using NSLocale."
检测中国用户
在我的应用中,我使用 NSLocale 来确定用户是否在中国。如果是这样,我不会在我的应用程序中初始化或使用 CallKit 功能。
- (void)viewDidLoad {
[super viewDidLoad];
NSLocale *userLocale = [NSLocale currentLocale];
if ([userLocale.countryCode containsString: @"CN"] || [userLocale.countryCode containsString: @"CHN"]) {
NSLog(@"currentLocale is China so we cannot use CallKit.");
self.cannotUseCallKit = YES;
} else {
self.cannotUseCallKit = NO;
// setup CallKit observer
self.callObserver = [[CXCallObserver alloc] init];
[self.callObserver setDelegate:self queue:nil];
}
}
要对此进行测试,您可以在“设置”>“通用”>“语言和地区”>“地区”中更改地区。当我将区域设置为“中国”但将语言设置为英语时,[NSLocale currentLocale]
返回 "en_CN"
。
我正在使用 CXCallObserver
来观察从我的应用发起的调用的状态。当我无法使用 CallKit 监控调用时,我的一般解决方法是:
UIApplicationDidBecomeActiveNotification
的观察者,带有带有到期处理程序的 UIBackgroundTask(我的应用程序已经启用了后台模式)-applicationDidBecomeActive
通常在调用开始时被调用一次或两次,通常是在前 1-3 秒内。关于ios - 此应用无法通过在中国激活的 CallKit 功能获得批准。请进行适当的更改并重新提交此应用以供审核,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50460864/
这段代码在 Java 中的等价物是什么?我放了一部分,我对 I/O 部分感兴趣: int fd = open(FILE_NAME, O_WRONLY); int ret = 0; if (fd =
我正在尝试将维度为 d1,d2,d3 的张量 M[a1,a2,a3] reshape 为维度为 d2, d1*d3 的矩阵 M[a2,a1*a3]。我试过 M.reshape(d2,d1*d3) 但是
我是一名优秀的程序员,十分优秀!