我想知道是否有任何方法可以从对 Google Places API 的查询中排除某些结果。
如果可能的话,我想以两种方式来做,但是如果有人可以帮助我完成其中一种工作,那将非常有帮助(或者答案可能是不可能,如果是这样,那就这样吧)
选择一种地点类型,但排除另一种。IE 我想搜索“美容院”,但我想过滤掉同样属于“护发”类型的结果
排除某些特定的地方,所以如果我搜索杂货店,但我不喜欢 Kroger,我想搜索“杂货店不命名 Kroger”
我们遇到了与GoogleMaps相关的问题.问题主要与触摸屏有关.我们试图解决这个问题,但到目前为止还没有成功.
我们在本文中发现Google Maps API V3不支持触摸事件?这是真是假?
UPDATE
这个问题是在bug中处理的
https://issuetracker.google.com/issues/35824421
并于2016年12月在Google Maps JavaScript API 3.27版中得到解决.
google-maps touchscreen touch google-maps-api-3 internet-explorer-10
正如你所知,每次我们输入谷歌地图自动完成功能都会触发,我想为此设置一个延迟函数,例如250毫秒,这样可以给用户更多的时间来输入并节省积分。我尝试添加 $timeout,但看起来它对我不起作用。请您帮我看看这个好吗?提前致谢。网页:
<input name="google_places_ac" type="text" class="google_places_ac input-block-level" ng-model="address" placeholder="Please enter a location" ng-blur="updateMap()"/>
Run Code Online (Sandbox Code Playgroud)
指示:
link: function($scope, elm, attrs) {
$timeout(function(){
var autocomplete = new google.maps.places.Autocomplete($(elm).find(".google_places_ac")[0], {});
google.maps.event.addListener(autocomplete, 'place_changed', function() {
var place = autocomplete.getPlace();
$scope.address = place.formatted_address;
$scope.location = {
formatted_address: place.formatted_address,
loglat: place.geometry.location
};
$scope.$apply();
//pop up the event and index(if needed)
$scope.$emit('updatemap',$scope.indexposition);
});
},1000);
}
Run Code Online (Sandbox Code Playgroud)
每次我尝试输入搜索输入时,它都会立即弹出搜索结果列表,有什么办法可以延迟它吗?那么用户可以输入更多字符吗?
我有一个Android应用程序,可在地图上显示多个位置。当我单击某个位置时,我想将该位置的纬度以及设备位置的纬度传递给Google Maps App,以便它可以向我显示两者之间的路线信息。
这可能吗?如果可以,怎么办?谢谢。
我正在使用setBoundsBias来限制Google地图autocompletePlace中的自动完成结果,但是结果包含超出范围的地方。问题是什么 ?
{
final int PLACE_AUTOCOMPLETE_REQUEST_CODE = 1;
AutocompleteFilter typeFilter = new AutocompleteFilter.Builder()
.setCountry("IR")
.build();
try {
Intent intent =
new PlaceAutocomplete.IntentBuilder(PlaceAutocomplete.MODE_OVERLAY)
.setBoundsBias(new LatLngBounds(new LatLng(38.051183, 46.211586),
new LatLng(38.132784, 46.392860)))
.setFilter(typeFilter)
.build(MainActivity.this);
startActivityForResult(intent, PLACE_AUTOCOMPLETE_REQUEST_CODE);
overridePendingTransition(R.anim.fadein, R.anim.fadeout);
} catch (GooglePlayServicesRepairableException | GooglePlayServicesNotAvailableException e) {
e.fillInStackTrace();
}
}
Run Code Online (Sandbox Code Playgroud) 当我尝试在API 26上安装android应用程序时,出现此错误。
首先,我尝试过build tool version- 25.3.1遇到下图所示的相同问题。
然后我已更新build tools version到26.0.1并支持库版本为26.0.0。
使用最新的Google Play服务版本- 11.0.4。
我检查了我正在使用的android库是否具有本地代码,即C ++代码,但是我使用的每个库库都是用Java编写的,期望一个库包含一些PHP,Python和Ruby。
我在用
我已经尝试过在这里提到的Gradle文件中包含ABI Splits
splits {
abi {
enable true
reset()
include 'x86', 'armeabi-v7a'
universalApk true
}
}
Run Code Online (Sandbox Code Playgroud)
但是每次都遇到相同的错误。
仿真器设备详细信息:
我正在编写一段代码,以便根据用户的提示使用 Node.js 获取附近的位置,并调用 Google 的地方 API。调用如下。
https://maps.googleapis.com/maps/api/place/textsearch/json?query=garage+near+corner+of+
fifth+avenue+NY&key=myApiKey
Run Code Online (Sandbox Code Playgroud)
基本上我在这里寻找纽约第五大道附近的车库。我得到的答复如下。
{
"html_attributions": [],
"next_page_token": "CqQCHgEAAKUUxRRzEF_vLKTGE5CLg-kBW7K8ot040l4zcsNHEByHpvjrhZZVOWcyCiPBbtErrX9QZNQ9dZQXCaxynnaJonFjF23_PPhWAmIfIRbY40E4gFioA5o4Gm3_OjkOicROypQQlArqaf2ub6vGoMwDKU1eP8m6SFmiMwm1cS_mghR0IWJ2Q9mH5jqpPtWJd2ENX3VCrDPeoOfhaxHAg3DIG7-eh7WYMlT9r6KAERCok-fXnjI49QVrezZYK52aCY3qeLSPLeXonrE2a79jfEdV1EhpBvb4fV2SB2oysCc_xK_Kv3FW6-Ir3WK2jXslrfRvFk7sIRxtgqAlZ2xCZ43oi7DeTl5733S5j4pbFZQHgsg9grLApa_H_wTN2xN1K9UsEhIQOf7B6Gnh668FPRTZe4X78BoUOMt8UiiVZR-YDJDb5AwyME7yYuY",
"results": [
{
"formatted_address": "39 W 23rd St, New York, NY 10010, United States",
"geometry": {
"location": {
"lat": 40.742537,
"lng": -73.99092399999999
},
"viewport": {
"northeast": {
"lat": 40.7437215802915,
"lng": -73.9896989197085
},
"southwest": {
"lat": 40.7410236197085,
"lng": -73.99239688029151
}
}
},
"icon": "https://maps.gstatic.com/mapfiles/place_api/icons/generic_business-71.png",
"id": "b075e432a0597a31ceaf3062747999291d8d8cf7",
"name": "Park-it 23-24 Operating Corp",
"opening_hours": {
"open_now": false,
"weekday_text": []
},
"place_id": "ChIJJalOaKRZwokRNLnbupB5UrY",
"reference": "CmRSAAAA-HGHWnLtBTIkRA7MlY1sjb8jDIxJQokfHSfQ_MWcLLM7lNB_MlUOwO0TcrQO8IYbUz1_l-HiehIwZ3hvg3sHEAiV-ZYpNL11gY15gz6hQsUFFKEkkfqoo_9R1PzVBd9CEhD7AxenKMzgH0LK4lNPFC8GGhSKMjd_5UnZyA3VRJrRYaw79QcxVg",
"types": [
"parking",
"point_of_interest",
"establishment" …Run Code Online (Sandbox Code Playgroud) 我使用Google Maps API(https://maps.googleapis.com/maps/api/geocode/xml)对地点和地址进行地理编码.但是,结果似乎不一致.administrative_area_level_2和locality或locality和sublocality_level_1似乎重叠.但是,根据地址,重叠是不同的.我需要做的一件事就是确定城市.文件说明该地区相当于一个城市,具体取决于国家.
如果我对"Noord-Holland,Nederland"进行地理编码,这是我得到的一个省:
我能够了解.一切似乎都很好......
如果我对"Amsterdam,Noord-Holland,Nederland"进行地理编码,我会得到以下结果:
在这里,我开始不理解结果.为什么阿姆斯特丹被列为administrative_area_level_2以及一个地方?也许有更高的政府机构同名?但是好的,阿姆斯特丹是当地,因此是城市.哪个是对的.
如果我对"Anton de Komplein 150,1102 CW Amsterdam,Noord-Holland,Nederland"进行地理编码,我会得到以下结果:
现在我真的不明白.
有人可以解释我应该如何解释结果吗?
Google 地图不会在 iPhone 上加载地图。但是,当我将 iPhone 连接到 Xcode 并执行该项目时,它会正确加载地图。
这是我的代码:
let camera = GMSCameraPosition.camera(withLatitude: -33.868, longitude: 151.2086, zoom: 14)
let mapViewtest = GMSMapView.map(withFrame: .zero, camera: camera)
let marker = GMSMarker()
marker.position = camera.target
marker.snippet = "Hello World"
//marker.appearAnimation = kGMSMarkerAnimationPop
marker.map = mapViewtest
view = mapViewtest
Run Code Online (Sandbox Code Playgroud)
控制台向我显示了这一点,但我不知道它是否与该问题有关:
CoreData:注释:无法在路径“/var/containers/Bundle/Application/33FC89CC-DC52-4212-A361-F54DD2AC3CD9/App_name.app/GoogleMaps.bundle/GMSCacheStorage.momd/StorageWithTileProto.omo”加载优化模型
编辑
问题是地图没有出现,但标记正确显示
与大多数位置查询工作相反,我实际上尝试通过其地址或 Google API 使用 Google API 来识别企业名称placeid。例如,当我在 googlemaps.com 上搜索时 1625 Wilshire Blvd, Los Angeles, CA 90017,其结果显示“在此位置”是“麦当劳”。
但是,当使用以下 URL 进行 API 调用时,名称会显示为街道地址,而我想要的是识别该位置的企业名称(“麦当劳”):
\n\nhttps://maps.googleapis.com/maps/api/place/textsearch/json?query=1625%20Wilshire%20Blvd,%20Los%20Angeles,%20CA%2090017&sensor=false&key=<api_key>
编辑:使用@xomena 推荐的确切调用,我仍然遇到同样的问题。我已经用 R 和 Python 运行了它,并且我\xe2\x80\x99m 得到的结果是街道地址,而不是两种方式的名称。
\n\nR代码:
\n\npackages <- c("RJSONIO")\nnew_packages <- packages[!(packages %in% installed.packages()[,"Package"])]\nif(length(new_packages)) install.packages(new_packages)\n\nlibrary(RJSONIO)\nRun Code Online (Sandbox Code Playgroud)\n\nfromJSON(URLencode(paste("https://maps.googleapis.com/maps/api/place/findplacefromtext/json?input=1625%20Wilshire%20Blvd%2C%20Los%20Angeles%2C%20CA%2090017&inputtype=textquery&fields=formatted_address,name,place_id&key=", api_key, sep = "")))
R输出:
\n\n$candidates\n$candidates[[1]]\n formatted_address \n"1625 Wilshire Blvd, Los Angeles, CA 90017, USA" \n name \n "1625 Wilshire Blvd" \n place_id \n "ChIJ18AW_aPHwoARXRm-cgcRcDs" \n\n\n$debug_log\n$debug_log$line\nlist()\n\n\n$status\n[1] "OK"\n …Run Code Online (Sandbox Code Playgroud) google-maps ×9
android ×3
adb ×1
angularjs ×1
directions ×1
ios ×1
location ×1
python ×1
r ×1
rjsonio ×1
swift ×1
touch ×1
touchscreen ×1