我想将Intent从Google Maps发送到我正在开发的Android应用程序,其中包括地理信息(纬度,经度等)。
我知道这需要设置一个意图过滤器,但是到目前为止,我唯一使用的过滤器是纯文本/文本过滤器:
<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
我已经尝试了以下方法,但是没有用(意图甚至没有在Google Maps中注册):
<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)。
答案 0 :(得分:3)
我遇到了类似的问题,并且找到了解决方法。
使用地理编码获取位置数据:
您将把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"
}
答案 1 :(得分:-1)
您感兴趣的是位置信息。
有一些选择
从Google地图接收意图。 您只会以带有google mapa网址的文本格式获取它
使用GPS获取位置