标签: watchos-2

保持Apple Watch清醒

我正在构建一个使用动作控制的Apple Watch应用程序.现在,我正在寻找一种方法来让应用程序保持清醒,而无需用户与屏幕交互.有任何想法吗?

apple-watch watchkit watchos-2

6
推荐指数
2
解决办法
1247
查看次数

获取Apple Watch的服务器数据

我想知道如何设计一个依赖于从服务器获取最新源的watchOS应用程序.您是否需要使用应用程序上下文并让iPhone在后台使用WatchConnectivity框架将其推送出来,或者您是否会在Apple Watch上使用NSURLSession?请记住,这是针对watchOS 2的.

ios nsurlsession apple-watch watchkit watchos-2

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

关闭/停用 WCSession

我正在开发带有手表扩展程序(watchOS 2)的 iPhone 应用程序(iOS 9 测试版),并将数据从手表传递到手机,我正在使用 WCSession。

我有 2 个不同的视图控制器使用 WCSessions,因此对于每个控制器,我正在实例化新的 WCSession 对象。对于第一个视图控制器它工作正常,但是当我想在第二个视图控制器中接收消息时,仍然很少有初始消息被发送到第一个控制器。

在转到第二个控制器之前,有什么方法可以停用/禁用第一个视图控制器的会话?或者还有其他我应该考虑的选择吗?

谢谢!

session ios apple-watch watchos-2

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

检测蓝牙耳机是否连接到Apple Watch

我最近试图让 WatchKit 应用程序从 Apple Watch\xe2\x80\x99s 扬声器播放背景音效。\n根据我的经验(如果我\xe2\x80\x99m错了,请纠正我!)这是不可能的,因为我要么需要连接蓝牙耳机才能使用WKAudioFilePlayer,要么使用其他界面元素来播放声音(WKInterfaceMovie或presentMediaPlayerControllerWithURL:选项:完成)。

\n\n

现在,我想使用 WKAudioFilePlayer 仅在连接蓝牙耳机时播放音频,以避免每次收到 \xe2\x80\x9ePair a 蓝牙耳机听音乐\xe2\x80\x9c-alert没有耳机可用的时间。

\n\n

有什么方法可以查明蓝牙耳机是否已连接,以便我可以以此为条件设置音频播放?

\n

xcode bluetooth swift watchkit watchos-2

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

Watch App的生命周期是什么?

WKInterfaceController我的Apple Watch应用程序中有两个子类.第一个是另一个的入口,它们nextPage与Interface Builder 的关系.对于awakeWithContext,willActivate并且didDeactivate在每个InterfaceController方法,我打印大家都出去了,而手表应用的启动.

我得到了这个输出:

awakeWithcontext -> First
awakeWithContext ?> Second
willActivate ?> First
willActivate -> Second
didDeactivate ?> Second
Run Code Online (Sandbox Code Playgroud)

然后我滑到下一个InterfaceController:

willActivate -> Second
didDeactivate ?> First
Run Code Online (Sandbox Code Playgroud)

所以现在的问题是:

awakeWithContext只要启动,Watch App中所有InterfaceControllers的所有方法都会被触发吗?

willActivate方法怎么样?

apple-watch watchkit watchos-2

6
推荐指数
2
解决办法
1918
查看次数

地图图块不会加载到Xcode 7.3 Watch Simulator中

这似乎是whatchOS 2发行说明中描述的已知问题:

如果您没有在Watch Simulator上看到地图图块加载,请先在iOS模拟器中启动地图图块.之后,地图图块将加载.

我尝试了这些步骤,没有成功,地图总是显示一个空网格:

  • 运行WatchKit应用程序.然后只启动WatchKit应用程序.在iOS模拟器中,我打开内置的地图应用.地图图块已加载并显示在那里.在Watch模拟器中,我转到Home并再次启动我的应用程序.地图保持黄色空格.
  • 在WatchKit应用程序中,我转到Home并启动其Maps应用程序.地图既不显示地图图块,也不显示黄色空网格和活动指示符.

有人经历过这个吗?

提前致谢

dictionary mkmapview ios ios-simulator watchos-2

6
推荐指数
0
解决办法
502
查看次数

如何在非活动手表收到本地通知时触发触觉警报

我正在为 Apple Watch 开发一个计时器应用程序。

在特定时间(计时器结束),iPhone 会触发计划UILocalNotification,在不活动的 Apple Watch 上应触发触觉警报,告诉用户计时器已结束。

我这样做是因为一旦手表处于非活动状态,计时器就不会继续在 Apple Watch 上运行。

我面临的问题是:

a) 通知有时会显示在 iPhone 上而不是 Apple Watch 上(基于其他帖子,我担心这无法更改...)

b) 手表上没有触觉警报(纯粹显示通知,这仅在用户下次激活手表时,而不是在实际触发通知时)

func sendAwakeNotification(nextTime:NSDate) {
    print("AppDelegate: - sendAwakeNotification")

    dispatch_async(dispatch_get_main_queue()) { () -> Void in

        let localNotification = UILocalNotification()
        localNotification.fireDate = nextTime
        localNotification.timeZone = NSTimeZone.defaultTimeZone()
        localNotification.alertBody = "Finished Step"
        localNotification.alertTitle = "Alert"

        localNotification.soundName = UILocalNotificationDefaultSoundName

        localNotification.category = "myTimer"
        let userInfo: [NSObject : AnyObject] = [
            "notification_id" : "myTimerNotification"
        ]
        localNotification.userInfo = userInfo

        UIApplication.sharedApplication().scheduleLocalNotification(localNotification)

    }
}
Run Code Online (Sandbox Code Playgroud)

通知中的代码

override func …
Run Code Online (Sandbox Code Playgroud)

uilocalnotification swift apple-watch watchkit watchos-2

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

带有 Realm for WatchOS 的架构 i386 的未定义符号

我想将 AppleWatch-Extension 添加到我当前的 Projekt。我正在使用这个 podfile:

def shared_pods
    pod 'RealmSwift', '2.0.2'
end

target 'Target-iOS' do
  platform :ios, '9.0'
  use_frameworks!
  ...
  shared_pods
end

target 'Target-MensaWidget' do
  platform :ios, '9.0'
  use_frameworks!
  shared_pods
end

target 'Watch Extension' do
  platform :watchos, '2.0'
  use_frameworks!
  shared_pods
end
Run Code Online (Sandbox Code Playgroud)

之后pod install我会在我的控制台这样的警告:

[!] [Xcodeproj] Generated duplicate UUIDs:
Run Code Online (Sandbox Code Playgroud)

当我尝试构建项目时,出现此错误:

Undefined symbols for architecture i386:
  "realm::BpTreeBase::replace_root(std::__1::unique_ptr<realm::Array, std::__1::default_delete<realm::Array> >)", referenced from:
Run Code Online (Sandbox Code Playgroud)

我还尝试在 Watch-Target 中使用 $(inherited)。

我正在使用 Xcode 7.3.1 和 pod 版本 0.39.0

有任何想法吗?

realm ios cocoapods swift watchos-2

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

animateWithDuration缺少完成块,WatchOS 2

watchOS 2在其animateWithDuration函数中没有任何类型的完成块.我正在开发一款需要在动画完成后运行代码的游戏.有没有工作?也许使用键值观察?另一种方法是使用与动画长度相匹配的计时器,但由于显而易见的原因,这是非理想的.

animatewithduration apple-watch watchkit watchos watchos-2

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

watchOS 2是否具有Force Touch的API?

作为标题,我想要确定是否WKInterfaceButton正常点击或强制点击.现在通过watchOS 2可以实现吗?

apple-watch wkinterfacebutton watchos-2

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