我的应用程序(应用程序 A)可以选择将位置数据发送到
- 谷歌地图,或
- 我编写的用于显示地形图的应用程序(应用程序 B)
应用 A 中调用这两个应用的代码基本相同
btnGoogleMap.setOnClickListener {
var uriString =
"geo:0,0?q=$selectedPoiLatitude,$selectedPoiLongitude&z=11"
var gmmIntentUri =
Uri.parse(uriString)
val googleMapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
googleMapIntent.setPackage("com.google.android.apps.maps")
startActivity(googleMapIntent)
}
btnMyMap.setOnClickListener() {
var mmUriString = "latlong:$selectedPoiLatitude,$selectedPoiLongitude"
var mmIntentUri = Uri.parse(mmUriString)
val mmIntent = Intent("com.prepbgg.mymap.action.latlong",mmIntentUri)
mmIntent.setPackage("com.prepbgg.mymap")
startActivity(mmIntent)
}
使用调用应用程序 B (mymap) 的选项后,任务切换器为应用程序 A 和应用程序 B 显示相同的缩略图(应用程序 B 中显示的地图)。如果我然后使用任务切换器重新打开应用程序 A 它打开并显示来自应用程序 B 的地图。如果我从主屏幕或应用程序抽屉重新打开应用程序 A,也会发生同样的情况。我必须使用后退按钮让应用程序 A 显示它自己的屏幕。
如果我从应用程序 A 调用 Google 地图,任务切换器会显示与我预期不同的缩略图:Google 地图的 Google 地图缩略图和应用程序 A 的应用程序 A 屏幕的缩略图,这就是我重新打开应用程序 A 时看到的内容。
如何在调用应用程序 B 时获得与调用 Google 地图时相同的行为?