我想知道iOS pebble本地应用程序是如何进行通信的。我可以使用云卵石创建手表应用程序,但我不知道如何在云模拟器和iOS鹅卵石本机之间建立连接。
任何帮助链接或任何事情都将不胜感激。谢谢
答案 0 :(得分:1)
如果我正确理解您,您是否正在尝试让您的代码在您的实体鹅卵石手表上编译和执行,对吗?
如果是这样,那么云卵石让这很容易。确保您在Pebble云中签署了相同的卵石帐户,就像您在手机上的卵石应用程序中一样。确保您的手机具有互联网连接也是明智之举。后记在cloudpebble中打开您的应用程序项目,单击编译选项卡,然后单击" phone"。
现在打开手机的pebble应用程序,然后进入" Developer Connection"屏幕,并确保它已启用。
如果一切都设置正确,现在当你"安装并运行"从cloudpebble,应用程序将自动下载到您的手机并被推到您的手表上。
答案 1 :(得分:1)
您只需在iOS应用上启用开发人员连接即可。
你可以在这里找到它。 http://i.imgur.com/uqNIGpN.png
答案 2 :(得分:1)
最后我发现它是我的自我感谢@dustin @kirby
默认情况下,pebble iOS应用程序没有选项启用开发人员选项模式 要获得选项,您需要使用蓝牙连接Pebble手表和Pebble iOS应用程序。
一旦你搞砸了,pebble iOS应用程序将从云卵石中听你的卵石手表安装。(我正在使用云卵石)。
有两种方法可以让它充实。
1.从云卵石中的编译选项卡中选择您的设备。 2.手动输入IP地址(但我认为它已从最新版本的pebble sdk中删除)。
您应该使用Mac电脑插入设备。 你应该将你的卵石手表与你的iPhone设备配对。
如果您使用c代码创建pebble watch(我的建议使用cloud pebble)
如果您想与iPhone设备和鹅卵石手表进行通信。
示例代码: 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.optional(我正在使用chrome浏览器和firefox)。
你可以下载示例项目..
让开发人员建立联系:
编写移动应用程序:
如果您遇到问题,请重启所有设备,然后重试。