首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計疑難解答

iOS App 跳轉百度地圖並進行周邊搜尋:URL Scheme 完整參數指南

     編輯:程式設計疑難解答

核心 URL Scheme


baidumap://map/poi/search?query=關鍵字&location=緯度,經度&radius=半徑(米)&src=你的App名稱

參數詳細表

參數必填說明範例
query是搜尋關鍵字(URL Encode)query=學校
location否中心點座標,預設為當前定位location=39.915,116.404
radius否搜尋半徑(米),預設 2000radius=5000
src是呼叫端 App 名稱(百度審核用)src=MyApp
coord_type否座標類型:gcj02(預設)/bd09ll/wgs84coord_type=gcj02

Swift 完整程式碼


func openBaiduMapSearch(keyword: String, latitude: Double, longitude: Double, radius: Int = 2000) {
    let encodedKeyword = keyword.addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed)!
    let urlString = "baidumap://map/poi/search?query=\(encodedKeyword)&location=\(latitude),\(longitude)&radius=\(radius)&src=MyApp"
    
    guard let url = URL(string: urlString),
          UIApplication.shared.canOpenURL(url) else {
        // 未安裝百度地圖 → 導向 App Store 或 Web 版
        let webUrl = "https://map.baidu.com/search/\(encodedKeyword)/"
        UIApplication.shared.open(URL(string: webUrl)!)
        return
    }
    UIApplication.shared.open(url, options: [:], completionHandler: nil)
}

Info.plist 必加白名單


LSApplicationQueriesSchemes

    baidumap

官方文件連結

常見問題

  • ❌ canOpenURL 回傳 false → 未加 LSApplicationQueriesSchemes 或未安裝百度地圖
  • ❌ 搜尋無結果 → 關鍵字編碼錯誤、座標系統不符(確認用 GCJ-02)
  • ✅ 建議提供「在瀏覽器開啟」備選,覆蓋未安裝用戶
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved