gpt4 book ai didi

android - 从 Google map 向带有地理信息的 Android 应用程序发送 Intent

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:13:58 24 4
gpt4 key购买 nike

我想将 Intent 从 Google map 发送到我正在开发的 Android 应用程序,其中包括地理信息(纬度、经度等)。

我知道它需要设置一个 intent 过滤器,但是到目前为止我唯一能使用的是纯文本过滤器:

<intent-filter>
<action android:name="android.intent.action.SEND"/>
<category android:name="android.intent.category.DEFAULT"/>
<data android:mimeType="text/plain"/>
</intent-filter>

然而,这只给我看起来像这样的文字描述:

899 Green St, San Francisco, CA 94133, https://goo.gl/maps/R4A82MNvUpA2

我已经尝试了以下方法,但是没有用( Intent 甚至没有在 Google map 中注册):

<intent-filter>
<category android:name="android.intent.category.DEFAULT" />
<action android:name="android.intent.action.VIEW" />
<data android:scheme="geo" />
</intent-filter>

有人知道怎么做吗?我使用的是 Android 9 (Pie)。

最佳答案

我遇到了类似的问题,但我找到了办法。

使用地理编码获取位置数据:

https://maps.googleapis.com/maps/api/geocode/json?address=899+Green+St,+San+Francisco,+CA+94133&key=your_key

你会得到 lat 和 lng 以及一堆其他数据:

{
"results": [
{
"address_components": [
{
"long_name": "899",
"short_name": "899",
"types": [
"street_number"
]
},
{
"long_name": "Green Street",
"short_name": "Green St",
"types": [
"route"
]
},
{
"long_name": "Russian Hill",
"short_name": "Russian Hill",
"types": [
"neighborhood",
"political"
]
},
{
"long_name": "San Francisco",
"short_name": "SF",
"types": [
"locality",
"political"
]
},
{
"long_name": "San Francisco County",
"short_name": "San Francisco County",
"types": [
"administrative_area_level_2",
"political"
]
},
{
"long_name": "California",
"short_name": "CA",
"types": [
"administrative_area_level_1",
"political"
]
},
{
"long_name": "United States",
"short_name": "US",
"types": [
"country",
"political"
]
},
{
"long_name": "94133",
"short_name": "94133",
"types": [
"postal_code"
]
}
],
"formatted_address": "899 Green St, San Francisco, CA 94133, USA",
"geometry": {
"bounds": {
"northeast": {
"lat": 37.7989435,
"lng": -122.4128121
},
"southwest": {
"lat": 37.7982939,
"lng": -122.4138552
}
},
"location": {
"lat": 37.7988047,
"lng": -122.4131897
},
"location_type": "ROOFTOP",
"viewport": {
"northeast": {
"lat": 37.79996768029149,
"lng": -122.4119846697085
},
"southwest": {
"lat": 37.7972697197085,
"lng": -122.4146826302915
}
}
},
"place_id": "ChIJrd0tGO6AhYARxCp3djZ6Ka0",
"types": [
"premise"
]
}
],
"status": "OK"
}

关于android - 从 Google map 向带有地理信息的 Android 应用程序发送 Intent,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53233867/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com