小编Eri*_*ric的帖子

用于确定是在iPhone还是iPad上运行的API

是否有用于在运行时检查您是在iPhone还是iPad上运行的API?

我能想到的一种方法是使用:

[[UIDevice currentDevice] model];
Run Code Online (Sandbox Code Playgroud)

并检测字符串@"iPad"的存在 - 这看起来有点脆弱.

在3.2 SDK中,我看到它UIDevice也有一个我正在寻找的属性,但不适用于3.2之前(显然):

[[UIDevice currentDevice] userInterfaceIdiom]; 
Run Code Online (Sandbox Code Playgroud)

还有其他方法可以检查通用应用程序是否存在@"iPad"?

iphone cocoa-touch objective-c uidevice ipad

32
推荐指数
2
解决办法
3万
查看次数

以编程方式检测是否启用了iOS密码

而不是直接在我的应用程序中构建密码,并可能要求用户输入密码两次(一次为设备,另一次为我的应用程序); 我以为我可能会聪明地做自己并做一些事情:

if (device has passcode)
    continue into my app
else
    make user enter my app passcode
Run Code Online (Sandbox Code Playgroud)

我不想设置设备密码,我不想强​​制屏幕锁定,不加密任何东西 - 我真正想要的只是一个API来检测设备密码是否生效.就像是:

BOOL notReally = [UIDevice isUserSlightlyMoreSecureBecauseTheySetDeviceLockOn];
Run Code Online (Sandbox Code Playgroud)

或者如果我感到幸运的话:

BOOL isPasscodeEnabled = [UIDevice isPasscodeEnabled];
BOOL isSimplePasscode = [UIDevice isSimplePasscode];
NSInteger minutes = [UIDevice requirePasscodeAfter];
Run Code Online (Sandbox Code Playgroud)

我猜不是基于这个问题(但是已经有几年了)"以编程方式检查设置包中的iPhone密码 "或者这可能就是答案; " 锁定解锁事件iphone "这不是我想要的,但可能"事后".

parental-control ios screen-lock

20
推荐指数
2
解决办法
2万
查看次数

是否可以在实例化对象之前检查故事板中是否存在标识符?

在我的代码中我有这一行,但我想知道是否有办法在我使用" instantiateViewControllerWithIdentifier "方法之前检查@"SomeController"是否存在.如果标识符不存在则应用程序崩溃.

如果没有一个好的方法,这不是一个大问题,我可以更加小心,不要吝啬标识符名称,但我希望我能更优雅地处理它.

UIViewController *newTopViewController = [self.storyboard    instantiateViewControllerWithIdentifier:@"SomeController"];
Run Code Online (Sandbox Code Playgroud)

cocoa-touch objective-c ios uistoryboard

14
推荐指数
4
解决办法
4504
查看次数

强制Android DateUtils.getRelativeDateTimeString()忽略设备区域设置?

我发现使用android.text.format.DateUtils返回"昨天"或"2小时前"等值的相对API非常好 - 但我的应用程序并不支持Android所做的每一种语言.所以,我默认为英语,但对于我不支持的每种语言,相对字符串显示在设备的设置中.

例如,像:

Last attempt: hace 11 minutos.

对于我不支持的任何语言,我想将API调用默认为英语.但是,我没有看到任何地方为API调用设置Locale - 我希望我只是在某处丢失它.

有没有办法为API调用设置Locale,忽略设备设置?

time android locale date relative-date

12
推荐指数
2
解决办法
4134
查看次数

当应用程序进入后台时,如何创建"返回应用程序"状态栏?

当我的应用程序在播放音频或录制音频时移动到后台时,我想提供一些类似绿色的"In Call"状态栏,当您正在通话并换到另一个应用程序时,会显示给您"返回app"功能.

我认为这可能是一个私有API,但我注意到Griffin iTalk应用程序在录制音频时会这样做(见图片) - 所以我知道它可以完成,但我无法弄清楚API是什么(该Info.plist设置,AVAudioSession时,UIApplication/Delegate或别的什么),使这种神奇的发生.我的应用程序目前正在工作并在后台录制音频并且运行正常,我假设有一些地方我没有设置得到这种行为.

有人可以指向正确的文档或展示此行为的示例代码吗?(我已经搜索了音频文档并且无法找到它).

谢谢!

替代文字

iphone audio cocoa-touch recording uistatusbar

7
推荐指数
1
解决办法
3150
查看次数

如何暂时锁定iPad/iPhone方向

在我的应用程序中的某个时刻,我想暂时禁用旋转功能 - 有效地"锁定"代码中的方向,类似于锁定切换开关在iPad上的硬件操作.

我现在正在做:

[[UIDevice currentDevice] endGeneratingDeviceOrientationNotifications]
Run Code Online (Sandbox Code Playgroud)

当我通过时,我打电话给:

[[UIDevice currentDevice] beginGeneratingDeviceOrientationNotifications]
Run Code Online (Sandbox Code Playgroud)

虽然这一切看起来都有效,但是API文档表明应该始终有一个开头,然后是结束 - 我基本上是反过来的.是否有更合适的API来处理"锁定方向"?

iphone cocoa-touch objective-c orientation ipad

6
推荐指数
1
解决办法
7471
查看次数

支持嵌入式标记和注释/注释的音频/视频文件格式?

我正在寻找为OS X和/或iOS创建一个应用程序,允许用户在录音过程中以不同的间隔任意地将标​​记嵌入到音频中.拥有一个可以包含此信息的文件会很好,但可能有效也可能无效.我认为它类似于YouTube注释允许的内容.

要求:

  • 能够在录音的某些时间点插入标记
  • 能够保存标记的名称以及简要说明

这适用于我正在处理的应用程序创建的音频,因此不能从其他来源导入音频以进行标记.

- 剪辑 -

编辑:也许MP4 + XMP?

EDIT2:有没有人尝试在iOS平台上使用音频或视频的自定义XMP字段?在Mac平台上?我已经从Adobe 下载了XMP工具包(它有一个Xcode项目) - 但这是我的舒适区域.从高层次来看,它看起来非常简单,但任何有XMP工具包经验的人都有任何想法吗?

正如下面的答案所示,是否有人有使用章节标记的QuickTime等替代解决方案的经验?各种方法的优点和缺点?

在考虑它之后,做一些支持音频和视频格式的东西会很不错,即使最初的当前要求只是音频.

iphone xmp cocoa cocoa-touch metadata

6
推荐指数
1
解决办法
1342
查看次数

USB调试设置保持"取消选中"

我正在使用Eclipse 3.6.2,OS X 10.6.7和三星Galaxy Tab进行Android开发.

一切都很好,除了每15或20分钟,设置| 应用| 发展| USB调试复选框"取消选中"自身.这意味着我需要拔下USB线并重新进入设置,重新选中复选框,重新插入线缆,我很高兴.

我想知道的是,是否有某种方法可以使该复选框"粘滞"(我猜它可能应该是 - 但我无法弄清楚在什么情况下会导致"取消选中") .我尝试过多种USB/SD卡/开发设置,但还没有找到"粘性位".

我是Android的新手,所以我希望这里有一些"你忘了也做X"......

编辑:

也许它与10分钟左右弹出的USB海量存储信息有关?我刚刚注意到一条消息"USB已连接:您已通过USB将手机连接到计算机.如果要在计算机和手机SD卡之间复制文件,请选择装入".

debugging usb android

5
推荐指数
1
解决办法
5745
查看次数