`
johnie_sheng
  • 浏览: 112330 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

在一个应用程序中调用其他的应用,比如说网站,App Store等等

 
阅读更多

In an earlier post I talked about how to launch the browser from within an iPhone application using the UIApplication:openURL: method.

It is also possible to use this same technique to launch other applications on the iPhone that are very useful.

Examples of some of the key applications that you can launch via URL are:

  • Launch Google Maps
  • Launch Apple Mail
  • Dial a Phone Number
  • Launch the SMS Application
  • Launch the Browser
  • Launch the AppStore

 

Launch Google Maps

The URL string for launching Google Maps with a particular keyword follows this structure:

http://maps.google.com/maps?q=${QUERY_STRING}

The only trick to this is to ensure that the value for the ${QUERY_STRING} is properly URL encoded. Here is a quick example of how you would launch Google Maps for a specific address:

1
2
3
4
5
6
7
8
9
10
11
// Create your query ...

NSString
*
 searchQuery =
 @
"1 Infinite Loop, Cupertino, CA 95014"
;
 
// Be careful to always URL encode things like spaces and other symbols that aren't URL friendly

searchQuery =
  [
addressText stringByAddingPercentEscapesUsingEncoding:
 NSUTF8StringEncoding]
;
 
// Now create the URL string ...

NSString
*
 urlString =
 [
NSString
 stringWithFormat:
@
"http://maps.google.com/maps?q=%@"
, searchQuery]
;
 
// An the final magic ... openURL!

[
[
UIApplication sharedApplication]
 openURL:
[
NSURL
 URLWithString:
urlText]
]
;
Launch Apple Mail

Also very useful, is the ability to enable a user to quickly send an email by launching the email client in compose mode and the address already filled out. The format of this URI should be familiar to anyone that has done any work with HTML and looks like this:

mailto://${EMAIL_ADDRESS}

For example, here we are opening the email application and filling the “to:” address with info@iphonedevelopertips.com :

[
[
UIApplication sharedApplication]
 openURL:
[
NSURL
 URLWithString:
@
"mailto://info@iphonedevelopertips.com"
]
]
;
Dial a Phone Number (iPhone Only)

You can use openURL: to dial a phone number. One advantage this has over other URLs that launch applications, is that the dialer will return control back to the application when the user hits the “End Call” button.

Anyone familiar with J2ME or WML will find this URL scheme familiar:

tel://${PHONE_NUMBER}

Here is an example of how we would dial the number (800) 867-5309:

1
[
[
UIApplication sharedApplication]
 openURL:
[
NSURL
 URLWithString:
@
"tel://8004664411"
]
]
;

NOTE When providing an international number you will need to include the country code.

Launch the SMS Application

Also not supported by the iPod Touch, is the ability to quickly setup the SMS client so that your users can quickly send a text message. It is also possible to provide the body of the text message.

The format looks like this:

sms:${PHONENUMBER_OR_SHORTCODE}

NOTE: Unlike other URLs, an SMS url doesn’t use the “//” syntax. If you add these it will assume it is part of the phone number which is not.

1
[
[
UIApplication sharedApplication]
 openURL:
[
NSURL
 URLWithString:
@
"sms:55555"
]
]
;

NOTE: According to the official SMS specification, you should be able to send a body as well as the phone number by including “?body=” parameter on the end of the URL … unfortunately Apple doesn’t seem to support this standard.

 

Lauching Browser

Here is a simple example of how to open safari with a specific URL:

1
2
NSURL
 *
url =
 [
NSURL
 URLWithString:
@
"http://www.iphonedevelopertips.com"
]
;
[
[
UIApplication sharedApplication]
 openURL:
url]
;
Launching the AppStore

Finally, it is worth noting that you can launch the AppStore and have the "buy" page of a specific application appear. To do this, there is no special URL scheme. All you need to do is open up iTunes to the application you want to launch; right-click on the application icon at the top left of the page; and select Copy iTunes Store URL .

The URL will look something like this:

http://phobos.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=291586600&mt=8

Launching the AppStore URL is exactly the same as you would launch the browser. Using the link above, here is an example of how we would launch the AppStore:

1
2
NSURL
 *
appStoreUrl =
 [
NSURL
 URLWithString:
@
"http://phobos.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=291586600&mt=8"
]
;
[
[
UIApplication sharedApplication]
 openURL:
appStoreUrl]
;
分享到:
评论

相关推荐

    AppStore_应用商店

    【AppStore_应用商店】是针对移动设备应用分发的一款软件平台,主要功能是提供一个集中的地方,让用户能够方便地查找、下载和管理应用程序。在这个项目中,开发者已经实现了一些核心特性,如断点下载、下载速度监测...

    IOS应用源码之跳转到app store的小案例 .rar

    在iOS开发中,有时我们需要在应用内部实现一个功能,让用户可以直接点击按钮跳转到App Store,以便查看、评价或下载我们的应用。这个“iOS应用源码之跳转到App Store的小案例”就是一个演示如何实现这一功能的代码...

    ios跳转appstore评论,判断是否评论

    "ios跳转appstore评论,判断是否评论"这个主题涉及到的是如何在iOS应用内部实现一个功能,该功能不仅能够直接链接到App Store以便用户撰写评论,而且还能智能地检测用户上次提交评论的时间,确保不会过于频繁地打扰...

    IOS应用源码——提示用户区app store评分的弹出框.zip

    `nicklockwood-iRate`是由Nick Lockwood开发的一个流行库,用于自动处理在App Store中请求用户评价。该库考虑了多种因素,如用户使用应用的次数、时间以及他们是否已经给出过评价,以确定最佳的提示时机。它的版本号...

    IOS应用源码Demo-跳转到app store的小案例-毕设学习.zip

    【标题】"IOS应用源码Demo-跳转到app store的小案例-毕设学习.zip" 提供了一个关于iOS应用程序开发的实例,特别是涉及到如何在iOS应用中实现跳转到App Store的功能。这对于iOS开发者,尤其是那些正在准备毕业设计或...

    swift-可与Apple的AppStoreConnectAPI配合使用的SwiftSDK

    这个过程可能涉及到在App Store Connect网站上创建和下载API密钥,然后将其安全地存储在应用的配置文件中。SDK通常会提供一个方法来加载这些凭据,并自动附加到API请求上。 在实际开发中,Swift SDK可以用于各种...

    ios-简单仿AppStore卡片动画.zip

    在AppStore中,当你点击一个应用时,会出现一个卡片式的详情视图从底部滑动上来,展示应用的详细信息。这种动画不仅提供了一个清晰的视觉指示,告诉用户发生了什么,还增加了操作的趣味性。要实现这样的效果,开发者...

    Swift-A简单地调用一个方法即可检测APP的新版本特性

    标题提到的"Swift-A简单地调用一个方法即可检测APP的新版本特性",指的是通过编写简洁的代码来实现检查应用程序是否需要更新。下面我们将深入探讨如何在Swift中实现这个功能。 首先,我们需要理解iOS应用的版本检查...

    自己做的第一个手机端安卓app商城项目,虽然只有一个功能,但是很满足了

    标题中的“自己做的第一个手机端安卓app商城项目”揭示了这个项目是一个个人开发的安卓应用程序,专注于移动端的购物体验。这表明开发者可能掌握了基础到中级的Android应用开发技能,包括UI设计、网络请求、数据存储...

    开发一个简单的Mobile应用程序.rar_Csharp C/S_csharp 下载_mobile_下载

    在本资源中,我们主要关注的是使用C#语言开发一个简单的移动应用程序。C#(读作"C sharp")是一种面向对象的编程语言,由微软公司为.NET框架开发,广泛应用于桌面应用、游戏开发以及移动应用等领域。C/S(Client/...

    iOS开发动态更换app图标

    为了在App启动时展示不同的图标,你可以创建一个LaunchScreen storyboard,它会在应用程序启动时显示。在这个LaunchScreen中,你可以设计一个动态加载图标的逻辑,比如从网络获取或者本地数据库读取新的图标图片。 ...

    解决mpvue + vuex 开发微信小程序vuex辅助函数mapState、mapGetters不可用问题.doc

    在微信小程序开发中,结合mpvue和vuex构建应用时,可能会遇到一个问题,即vuex的辅助函数mapState、mapGetters无法正常使用。这些问题通常源于mpvue与vue-cli的常规项目配置有所不同,使得store对象没有被正确地注入...

    IOS封装网址APP源码

    这里提到的"IOS封装网址APP源码"就是这种技术的具体实践,它允许开发者将一个Web页面(通常是HTML5应用)打包成一个可以在iOS设备上运行的应用程序。 首先,我们要理解"WebView"的概念。WebView是iOS SDK中的一种...

    iOS通过UrlSchemes跳转到别的应用是

    在iOS平台上,UrlSchemes是一种实现应用程序间交互(App-to-App interaction)的重要技术。它允许一个应用通过特定的URL模式启动另一个已安装的应用。在本文中,我们将深入探讨如何利用UrlSchemes来判断iOS设备上...

    应用之间的交互 iOS

    在iOS系统中,应用之间的交互是一项关键功能,它允许用户在不同的应用程序之间切换,实现数据共享和服务集成。这种技术被称为程序间通讯(Inter-App Communication),是iOS开发中的一个重要概念。苹果公司为了维护...

    h5唤醒APP,如果未下载跳转下载页,如果已下载唤醒APP

    5. **配置应用商店链接**:对于未安装APP的情况,需要提前准备好在应用商店的下载链接,通常是Google Play或Apple App Store的链接。当检测到APP未安装时,H5页面会自动重定向到这个下载页面。 6. **错误处理**:在...

    store_v5.zip

    【标题】"store_v5.zip" 是一个包含Java Web MVC框架构建的网络商城源代码的压缩包。这个项目可能是为了教学、研究或者实际商业应用而设计的,它展现了如何运用MVC模式来开发一个完整的网上商店系统。 【描述】...

    app-src.rar_mobile app

    标题中的"app-src.rar"表明这是一个包含移动应用源代码的压缩文件,而“_mobile app”则强调这是针对移动设备的应用程序。描述中提到“嵌入式的捕捉程序”,这可能是指该应用程序包含了一些用于捕获数据或用户行为的...

    用最简单的方式来自动构建和发布你的iOS和Android应用程序

    "用最简单的方式来自动构建和发布你的iOS和Android应用程序"这一主题旨在介绍如何利用工具集Fastlane实现这一目标。Fastlane是由Ruby编写的,它允许开发者通过简单的命令行接口来执行复杂的构建、测试和发布任务。 ...

    ios-APP内置调试工具.zip

    这可能是一个工具或功能,它能够记录并展示应用在网络通信过程中的请求、响应、错误等信息,帮助开发者追踪和分析网络故障。 压缩包中的`bugkit.rtf`文件很可能包含了关于这些调试工具的详细文档或使用指南,例如...

Global site tag (gtag.js) - Google Analytics