如何使用网站按钮的静音推送打开后台应用程序

时间:2015-09-17 18:27:54

标签: ios objective-c iphone api apple-push-notifications

是否可以使用像#34; Boxcar"链接到我的网页中的按钮,发送静音推送到我的iPhone,其中iPhone将中断当前正在运行的应用程序,并使用推送的更新信息重新打开(之前打开/在后台)链接的应用程序?

总而言之:打开一个应用程序,转到另一个应用程序(例如推特),然后在我的网页上按下一个按钮,让推特中断,并使用推送的更新数据返回原始应用程序。

另一个问题是,我需要第三方API来完成此任务吗?或者我可以使用纯苹果代码吗?

我是一名相当新的程序员,对APN和应用程序构建非常新,所以任何帮助都将非常感谢。谢谢!

1 个答案:

答案 0 :(得分:0)

首先,欢迎来到SO!

不幸的是,没有办法在iOS中以编程方式从后台打开应用程序。 Apple将其留给用户。您必须向用户与之交互的手机发送推送,才能将应用打开到特定页面。您打开另一个应用程序的唯一方法是使用URL Schemes(请参阅此处:https://developer.apple.com/library/ios/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/Inter-AppCommunication/Inter-AppCommunication.html

问题是你只能从你的应用程序到其他人的应用程序(或者如果你有一个广泛使用的应用程序,有些人甚至可能链接到你的,虽然我不确定Twitter会做到这一点)。

基本上,URL方案的作用是允许手机打开URL,就像它是一个网站一样。在加载网页之前,它会检查是否有任何应用响应该网址。例如,如果您想要将地图打开到特定位置:

NSString *title = @"title";
float latitude = 35.4634;
float longitude = 9.43425;
int zoom = 13;
NSString *stringURL = [NSString stringWithFormat:@"http://maps.google.com/maps?q=%@@%1.6f,%1.6f&z=%d", title, latitude, longitude, zoom];
NSURL *url = [NSURL URLWithString:stringURL];
[[UIApplication sharedApplication] openURL:url];

希望能回答你的问题!