当前位置: 首页 > 软件库 > 手机/移动开发 > >

react-native-google-place-picker

授权协议 MIT License
开发语言 Java
所属分类 手机/移动开发
软件类型 开源软件
地区 不详
投 递 者 葛航
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

react-native-google-place-picker

React Native Wrapper of Google Place Picker for iOS + Android.

iOS Android

Table of contents

Install

npm install react-native-google-place-picker --save

Then you must install the native dependencies. You can use rnpm (now part of react-native core) to add native dependencies automatically:

react-native link

or link manually like so: 

iOS

  1. In XCode, in the project navigator, right click LibrariesAdd Files to [your project's name]

  2. Go to node_modulesreact-native-google-place-picker and add RNGooglePlacePicker.xcodeproj

  3. In XCode, in the project navigator, select your project. Add libRNGooglePlacePicker.a to your project's Build PhasesLink Binary With Libraries

  4. Inside your ios directory add a file named Podfile with the following content

  5. Run pod install --project-directory=ios in the project root path.

  6. At the top of your AppDelegate.m:

    #import <GoogleMaps/GoogleMaps.h>
    #import <GooglePlaces/GooglePlaces.h>

    And then in your AppDelegate implementation, Add the following to your application:didFinishLaunchingWithOptions, replace YOUR_API_KEY:

    NSString *kAPIKey = @"YOUR_API_KEY";
    [GMSPlacesClient provideAPIKey:kAPIKey];
    [GMSServices provideAPIKey:kAPIKey];
    
  7. Run react-native run-ios

Android

  1. Open up android/app/src/main/java/[...]/MainActivity.java
  • Add import com.reactlibrary.RNGooglePlacePickerPackage; to the imports at the top of the file
  • Add new RNGooglePlacePickerPackage() to the list returned by the getPackages() method
  1. Append the following lines to android/settings.gradle:
include ':react-native-google-place-picker'
project(':react-native-google-place-picker').projectDir = new File(rootProject.projectDir, 	'../node_modules/react-native-google-place-picker/android')
  1. Insert the following lines inside the dependencies block in android/app/build.gradle:
compile project(':react-native-google-place-picker')
  1. Add permisson and your YOUR_API_KEY to your manifest file:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example"
    android:versionCode="1"
    android:versionName="1.0">

    ...

    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

    ...

    <application>

      ...

      <meta-data
          android:name="com.google.android.geo.API_KEY"
          android:value="YOUR_API_KEY" />

      ...

    </application>
</manifest>

Usage

import RNGooglePlacePicker from 'react-native-google-place-picker';

RNGooglePlacePicker.show((response) => {
  if (response.didCancel) {
    console.log('User cancelled GooglePlacePicker');
  }
  else if (response.error) {
    console.log('GooglePlacePicker Error: ', response.error);
  }
  else {
    this.setState({
      location: response
    });
  }
})

Example

The Response Object

key type Description
didCancel boolean Informs you if the user cancelled the process
error string Contains an error message, if there is one
address string/null The formated address of selected location, null if not available
name string The name of this Place
google_id string The unique id of this Place
latitude number The latitude value of selected location
longitude number The longitude value of selected location

Credits

Thanks following repositories' inspiration/help:

License

Code in this git repo is licensed MIT.

  • 我使用的是react native,目前已开始使用redux并创建了一个应用程序,但当我在模拟器上运行该应用程序时,它工作正常。然后我通过USB将我的手机连接到Android 6上,它也在工作。但是在android 8的其他设备中,它不工作,然后我将targetsdkversion更改为28,然后它也不工作,我不知道问题是什么。 下面是my package.json { "name": "Demo

 相关资料
  • React Native Mapping Integration 这个包提供了一个兼容React Native,并且可以使用相同的JavaScript API在iOS和Android平台上运行的谷歌地图UI组件。 安装 npm install --save react-native-maps-google

  • React Native Wrapper for Latest Google Sign-In SDK https://github.com/devfd/react-native-google-signin is not working and is not being maintained anymore (See Issue), so I created this one myself.It u

  • NativeScript plugin for Google Place Picker This is a cross-platform (iOS & Android) Nativescript plugin for the Google Places Picker Place Picker | Google Places API for Android Place Picker | Google

  • 本文向大家介绍react-native 启动React Native Packager,包括了react-native 启动React Native Packager的使用技巧和注意事项,需要的朋友参考一下 示例 在最新版本的React Native上,无需运行打包程序。它将自动运行。 默认情况下,这将在端口8081上启动服务器。要指定服务器所在的端口            

  • 百度移动统计SDK支持使用react native框架的H5页面统计,封装好的插件已经在github上开源,相关用法具体请参考:https://github.com/BaiduMobileAnalysis/baidumobstat-react-native。

  • The React Native environment has a lot of little quirks, so this documentation is aimed at helping smooth those over. Please feel free to create issues on GitHub for recommendations and additions to t