我想知道如何与 iOS pebble 原生应用程序进行通信。我可以使用云 pebble 创建手表应用程序,但我不知道如何在云模拟器和 iOS pebble 原生应用程序之间建立连接。
任何帮助链接或任何事情将不胜感激。谢谢
我想知道如何与 iOS pebble 原生应用程序进行通信。我可以使用云 pebble 创建手表应用程序,但我不知道如何在云模拟器和 iOS pebble 原生应用程序之间建立连接。
任何帮助链接或任何事情将不胜感激。谢谢
如果我对您的理解正确,您正试图让您的代码在您的物理 pebble 手表上编译和执行,对吗?
如果是这样,那么云卵石使这变得非常容易。确保您在 pebble 云中登录到与手机上的 pebble 应用程序中相同的 pebble 帐户。确保您的手机有互联网连接也是明智之举。后记在cloudpebble中打开你的应用项目,点击编译选项卡,然后点击“手机”。
现在打开手机的 pebble 应用程序并进入“开发者连接”屏幕,并确保它已启用。
如果一切设置正确,现在当您从 cloudpebble“安装并运行”时,应用程序将自动下载到您的手机并推送到您的手表上。
您只需要在您的 iOS 应用上启用开发者连接。
你可以在这里找到它。http://i.imgur.com/uqNIGpN.png
最后我找到了我自己。感谢@dustin @kirby
默认情况下,pebble iOS 应用程序没有启用开发者选项模式的选项要启用 选项,您需要使用蓝牙将 pebble 手表与 pebble iOS 应用程序连接。
启用后,pebble iOS 应用程序将从云 pebble 监听您的 pebble 手表安装。(我正在使用云 pebble)。
有两种方法可以启用它。
1.从云卵石的编译选项卡中选择您的设备。2.手动输入IP地址(但我认为它已从最新版本的pebble sdk中删除)。
你应该用你的 Mac 电脑插入你的设备。您应该将您的卵石手表与您的 iPhone 设备配对。
如果您使用 c 代码创建卵石手表(我的建议使用云卵石)
如果您想与您的 iPhone 设备和 pebble 手表进行通信。
关注这里。
示例代码:C语言
从 iPhone 应用程序接收数据以观看:
static void inbox_received_callback(DictionaryIterator *iterator, void *context) {
APP_LOG(APP_LOG_LEVEL_INFO, "Message received!");
Tuple *t = dict_read_first(iterator);
while (t != NULL) {
// Long lived buffer
static char s_buffer[64];
APP_LOG(APP_LOG_LEVEL_INFO, "Message ready to get!");
snprintf(s_buffer, sizeof(s_buffer), "'%s'", t->value->cstring);
text_layer_set_text(hello_text_layer, s_buffer);
// Get next pair, if any
t = dict_read_next(iterator);
}
}
从手表接收数据到 iPhone 应用程序:
- (IBAction)send:(id)sender {
[self.watch appMessagesLaunch:^(PBWatch *watch, NSError *error) {
if (!error) {
NSLog(@"Successfully launched app.");
}
else {
NSLog(@"Error launching app - Error: %@", error);
}
}
];
// Register to receive events
[[PBPebbleCentral defaultCentral] setDelegate:self];
// Set UUID
//UUID is must which is available in watch application.
uuid_t myAppUUIDbytes;
NSUUID *myAppUUID = [[NSUUID alloc] initWithUUIDString:@"3c74cf8f-74e5-4975-8ad5-e4b25beea86f"];
[myAppUUID getUUIDBytes:myAppUUIDbytes];
[[PBPebbleCentral defaultCentral] setAppUUID:[NSData dataWithBytes:myAppUUIDbytes length:16]];
NSDictionary *message = @{@(0):@"optisol",
};
NSLog(@"%@",message);
//sending code
[self.watch appMessagesPushUpdate:message onSent:^(PBWatch *watch, NSDictionary *update, NSError *error) {
NSLog(@"getting called");
if (!error) {
NSLog(@"Message sent!!!!!!!!");
}
else
{
NSLog(@"Message not sent!!!!!!!!\n\n%@",error.localizedDescription);
}
}];
//receving code
[self.watch appMessagesAddReceiveUpdateHandler:^BOOL(PBWatch *watch, NSDictionary *update) {
// Process incoming messages
NSLog(@"%@",update);
NSLog(@"received called");
return YES;
}];
}
应该是: 1.移动设备和计算机应该在同一个网络 2.应该配对 3.可选(我使用的是 chrome 浏览器和 firefox)。
您可以下载示例项目..
要启用开发人员连接:
编写移动应用程序:
如果您对此有疑问,只需重新启动所有设备并重试。