Gam*_*int 7 sdk ios core-motion apple-m7
试图找到一种检测M7存在的方法.
如果M7不存在,查询CMStepCounter或CMMotionActivity类是否毫无意义?我的猜测是,在拥有iOS 7.0的非M7型号上,这些类可以获得数据,但效率并不高,而且使用的电池更多.
粗暴的方式是:
struct utsname systemInfo;
uname(&systemInfo);
model = [[NSString alloc] initWithCString:systemInfo.machine
encoding:NSUTF8StringEncoding];
version = [[NSString alloc] initWithString:[[UIDevice currentDevice] systemVersion]];
if ([model compare:@"iPhone6,1"]) {
}
Run Code Online (Sandbox Code Playgroud)
rma*_*ddy 17
使用Apple提供的API:
if ([CMStepCounter isStepCountingAvailable]) {
// The device supports step counting
} else {
// The device does not support step counting
}
if ([CMMotionActivityManager isActivityAvailable]) {
// You can use CMMotionActivity
} else {
// Nope, not supported
}
Run Code Online (Sandbox Code Playgroud)
当然,此API仅适用于iOS 7或更高版本.因此,如果您需要支持iOS 5或6,那么您还需要将此代码包装在CMStepCounter类的检查中.