我在Waze 之类的应用程序中看到过——GPS 导航和 Facebook 应用程序有一个协议,当用户浏览 waze:// 网站时,它会打开具有给定位置的 Waze 应用程序。
例如:
当我在手机中安装 Waze 并且我正在冲浪到:
waze://?ll=<lat>,<lon>
Waze 应用程序将自动打开并将我的地图居中到纬度、纬度位置。
我如何为我自己的应用程序制作和注册一个协议,该协议将使用如下语法
`myApp://command`
并会用给定的参数打开我的应用程序?
我在Waze 之类的应用程序中看到过——GPS 导航和 Facebook 应用程序有一个协议,当用户浏览 waze:// 网站时,它会打开具有给定位置的 Waze 应用程序。
例如:
当我在手机中安装 Waze 并且我正在冲浪到:
waze://?ll=<lat>,<lon>
Waze 应用程序将自动打开并将我的地图居中到纬度、纬度位置。
我如何为我自己的应用程序制作和注册一个协议,该协议将使用如下语法
`myApp://command`
并会用给定的参数打开我的应用程序?
是否可以创建一个模式,以防用户没有应用程序,它将发送给他在 Google 的市场上下载?
不。
欢迎您使用 HTTP URL 作为您的“自定义协议”:
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data
android:host="www.this-so-does-not-exist.com"
android:path="/something"
android:scheme="http"/>
</intent-filter>
这<intent-filter>将匹配http://www.this-so-does-not-exist.com/something。如果您的应用未安装,用户将在 Web 浏览器中查看。但是,如果您的应用程序已安装,用户可能仍会选择在 Web 浏览器中查看此内容,而不是从选择器中选择您的应用程序。