我在理解Google Places API时遇到了问题。我正在构建一个带有附近功能的iPhone应用程序,允许用户找到位于用户GPS周围的餐馆。如何获取Google API?我必须有一个定制的,这是如何工作的?如果我还想为兴趣点创建API,我该怎么办?
答案 0 :(得分:7)
有一个用于搜索附近位置的Google Places API。文档在这里:https://developers.google.com/places/documentation/search#PlaceSearchRequests
但我猜你已经找到了。如果您提出更具体的问题,我们会更有帮助。
答案 1 :(得分:2)
您可以使用Google Place API,如果您只想显示特定类型的地方,例如您的情况下的餐馆,您可以使用请求对象,如下面的代码所示
menuExpandItem = new RadialMenuItem(getString(R.string.about),
getString(R.string.about));
menuExpandItem .setDisplayIcon(R.drawable.ic_launcher);
menuExpandItem
.setOnMenuItemPressed(new RadialMenuItem.RadialMenuItemClickListener() {
@Override
public void execute() {
// Can edit based on preference. Also can add animations
// here.
getSupportFragmentManager().popBackStack(null,
FragmentManager.POP_BACK_STACK_INCLUSIVE);
getSupportFragmentManager()
.beginTransaction()
.replace(mFragmentContainer.getId(),
new RadialMenuAboutFragment()).commit();
}
});
// pieMenu.setDismissOnOutsideClick(true, menuLayout);
pieMenu.setAnimationSpeed(0L);
pieMenu.setSourceLocation(3,200);
pieMenu.setIconSize(15, 30);
pieMenu.setTextSize(13);
pieMenu.setInnerRingRadius(45,90);
pieMenu.setCenterLocation(550,1500);
pieMenu.setOutlineColor(Color.BLACK, 225);
pieMenu.setInnerRingColor(0xfbce25, 180);
pieMenu.setOuterRingColor(0x0099CC, 180);
//pieMenu.setHeader("Test Menu", 20);
pieMenu.setCenterCircle(menuCloseItem);
pieMenu.addMenuEntry(new ArrayList<RadialMenuItem>() {
{
add(menuItem);
add(menuExpandItem);
add(menuHome);
}
});
有关google place API中类型过滤的详细信息,您可以查看Link on Google Developers。 但附近的搜索仅采用一种类型参数,而且只有餐馆。如果您正在寻找公共餐饮场所,那么Google API不提供食物,不是咖啡馆,只有餐馆。
答案 2 :(得分:0)
首先,Google Paces API 应该处于活动状态。
function displayRestaurantAround() {
return new Promise((resolve, reject) => {
this.service.nearbySearch({
location: currentUserPosition,
radius: 5000,
types: ['restaurant']
}, (res) => {
resolve(res);
});
});
}