【问题标题】:How I can open native alarm clock in iphone by using code?如何使用代码在 iphone 中打开本机闹钟?
【发布时间】:2012-01-04 06:05:20
【问题描述】:

我必须创建一个示例应用程序,当我单击一个按钮时应该打开本机闹钟以便用户可以使用它来设置闹钟?

【问题讨论】:

标签: iphone alarm


【解决方案1】:

如果时钟应用支持 URL 方案,例如电话应用的 tel:// 或邮件应用的 mail://,您可以使用标准的 [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"..."]] 方法打开它。不幸的是,据我所知,它没有,所以您真正能做的就是提示用户自己打开该应用程序来设置警报。

或者,您可以使用 UILocalNotification 让您的应用设置一个本地通知act作为警报,您可以通过searching this site 找到大量相关信息。

【讨论】:

  • 我有很多谷歌可以做到这一点,我知道使用本地通知和使用计时器的其他方式,但我想把它作为我的问题。非常感谢您的帮助....
  • 当我们使用库中的本机 MFMailComposer 时,我们只是使用它,它会直接打开本机 mailcomposer 以发送邮件,就像我想要处理警报一样。有图书馆吗??我也搜索了它,但没有得到这个。
  • 没有。如果您希望他们添加 iOS SDK,您可以在 bugreport.apple.com 提交增强请求。
  • 感谢您的宝贵建议。
【解决方案2】:

对于默认应用 MobileClock.app 存在几个 url 方案。如果您查看系统文件并打开 MobileClock.app 的内容,您将在 info.plist 私有 url 方案中找到:

  • 时钟-世界时钟,
  • 时钟闹钟,
  • 时钟秒表,
  • 时钟定时器,
  • 时钟定时器运行 .

使用它们应该可以在外部运行应用程序,但只能从 Today 小部件。移动笔记应用也是如此。

【讨论】:

    【解决方案3】:

    需要两个步骤。

    将 URL 添加到 info.plist CFBundleURLSchemes

    <array>
            <dict>
                <key>CFBundleTypeRole</key>
                <string>Editor</string>
                <key>CFBundleURLSchemes</key>
                <array>
                    <string>clock-alarm</string>
                    <string>clock-stopwatch</string>
                </array>
            </dict>
    </array>
    

    调用sharedApplication的openURL

    [[UIApplication sharedApplication] 
      openURL:[NSURL URLWithString:@"clock-alarm:"]];
    ];
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多