Anda sudah siap!

Untuk mulai mengembangkan, masuklah ke dokumentasi developer kami.

Aktifkan Google Places API for iOS

Untuk membantu Anda memulai, kami akan memandu Anda melalui Google Developers Console untuk melakukan beberapa hal terlebih dahulu:

  1. Buat atau pilih sebuah proyek
  2. Aktifkan Google Places API for iOS
  3. Buat kunci yang sesuai
Lanjutkan

Place Add

Anda bisa menggunakan Google Places API for iOS untuk menambahkan tempat ke database Google Places. Tempat yang baru ditambahkan tersedia untuk aplikasi Anda dalam waktu yang singkat, dan ditambahkan ke antrean moderasi untuk kemungkinan penambahan ke database Google Places dan Google Maps.

Agar tempat tersebut berpeluang lebih besar lulus dalam proses moderasi dan ditambahkan ke database Google Places, permintaan penambahan harus menyertakan informasi sebanyak mungkin. Khususnya, alamat, nomor telepon dan situs web merupakan hal penting.

  1. Menambahkan tempat
  2. Menangani beberapa ID tempat dan lingkup ID tempat

Menambahkan tempat

Buat GMSUserAddedPlace kemudian teruskan ke GMSPlacesClient addPlace:callback:.

Sertakan informasi berikut saat membuat GMSUserAddedPlace:

  • Diperlukan: name tekstual lengkap untuk bisnis, tempat menarik, atau tempat lainnya. Dibatasi hingga 255 karakter.
  • Diperlukan: address tempat yang bisa dibaca orang. Jika sebuah tempat memiliki alamat yang diformat dengan baik dan bisa dibaca orang, maka besar kemungkinan akan lulus proses moderasi untuk dimasukkan dalam database Google Places.
  • Diperlukan: Objek coordinate (CLLocationCoordinate2D) yang menetapkan lokasi tempat.
  • Opsional: phoneNumber tempat tersebut. Ini adalah nomor telepon dalam format internasional. Format internasional menyertakan kode negara dan diawali dengan tanda tambah (+). Misalnya, nomor telepon internasional untuk kantor Google di Mountain View, AS adalah +1 650-253-0000. Jika sebuah tempat memiliki nomor telepon yang diformat dengan baik, maka besar kemungkinan akan lulus proses moderasi untuk dimasukkan dalam database Google Places. Catatan: Anda harus memberikan phoneNumber atau website, atau keduanya.
  • Diperlukan: Daftar tipe tempat yang mencirikan tempat ini. Hanya tipe tabel 1 yang valid.
  • Opsional: Sebuah URI website berisi alamat situs web resmi untuk tempat ini, seperti laman beranda bisnis. Jika sebuah tempat memiliki alamat situs web yang diformat dengan baik, maka besar kemungkinan akan lulus proses moderasi untuk dimasukkan dalam database Google Places. Catatan: Anda harus memberikan phoneNumber atau website, atau keduanya.

Sertakan juga metode callback untuk menangani hasilnya. API akan memanggil metode callback yang ditetapkan, dengan meneruskan objek GMSPlace hasilnya untuk tempat yang baru dibuat.

Contoh kode berikut menambahkan tempat bernama 'Google Shoes!' di Pyrmont, Australia.

Swift

let userAddedPlace = GMSUserAddedPlace()
userAddedPlace.name = "Google Shoes!"
userAddedPlace.address = "48 Pirrama Road, Pyrmont, NSW 2009, Australia"
userAddedPlace.coordinate = CLLocationCoordinate2DMake(-33.8669710, 151.1958750)
userAddedPlace.phoneNumber = "(02) 9374 4000"
userAddedPlace.website = "http://www.google.com.au/"
userAddedPlace.types = ["shoe_store"]
placesClient.add(userAddedPlace, callback: { (place, error) -> Void in
  if let error = error {
    print("Add Place error: \(error.localizedDescription)")
    return
  }

  if let place = place {
    print("Added place with placeID \(place.placeID)")
    print("Added Place name \(place.name)")
    print("Added Place address \(place.formattedAddress)")
  }
})

Objective-C

GMSUserAddedPlace *userAddedPlace = [[GMSUserAddedPlace alloc] init];
userAddedPlace.name = @"Google Shoes!";
userAddedPlace.address = @"48 Pirrama Road, Pyrmont, NSW 2009, Australia";
userAddedPlace.coordinate = CLLocationCoordinate2DMake(-33.8669710, 151.1958750);
userAddedPlace.phoneNumber = @"(02) 9374 4000";
userAddedPlace.website = @"http://www.google.com.au/";
userAddedPlace.types = @[@"shoe_store"];

[_placesClient addPlace:userAddedPlace callback:^(GMSPlace *place, NSError *error) {
  if (error != nil) {
    NSLog(@"User Added Place error %@", [error localizedDescription]);
    return;
  }

  NSLog(@"Added place with placeID %@", place.placeID);
  NSLog(@"Added Place name %@", place.name);
  NSLog(@"Added Place address %@", place.formattedAddress);
}];

Objek GMSPlace hasilnya memiliki ID tempat unik, yang untuk seterusnya bisa digunakan aplikasi Anda untuk mengambil detail tempat. Tempat yang telah ditambahkan juga tersedia setelah beberapa saat dalam hasil permintaan get-current-place yang dibuat oleh aplikasi Anda, dan dalam place-picker yang ditampilkan oleh aplikasi Anda. Lingkup ditentukan oleh ID proyek yang digunakan untuk membuat kunci API Anda.

Tempat yang baru ditambahkan akan memasuki antrean moderasi untuk dipertimbangkan penambahannya ke database Google Places. Tempat yang tidak disetujui oleh proses moderasi akan tetap bisa diambil melalui ID tempat dalam aplikasi yang menyerahkannya, namun tidak akan muncul lagi dalam hasil permintaan get-current-place, api-picker, atau metode API lainnya. Tempat yang lulus moderasi akan bisa dilihat oleh semua aplikasi dan pada Google Maps.

Menangani beberapa ID tempat dan lingkup ID tempat

Setiap ID tempat bisa merujuk ke satu tempat saja, namun satu tempat bisa memiliki lebih dari satu ID tempat. Kasus yang paling umum untuk menangani multi ID sebuah tempat adalah bila Anda telah menambahkan tempat yang awalnya dalam cakupan aplikasi Anda, lalu menerima cakupan berskala Google.

Bila menambahkan tempat, Anda akan menerima ID tempat untuk tempat baru itu dengan segera. ID tempat ini hanya sebatas untuk aplikasi Anda saja. Tempat tersebut kemudian masuk antrean moderasi, menunggu persetujuan untuk penambahan ke database Google Places. Jika disetujui, tempat itu akan menerima ID tempat baru, yang bisa digunakan semua aplikasi dan pada Google Maps.

Bila Anda meminta sebuah tempat dengan menetapkan ID tempat, Anda bisa yakin akan selalu menerima tempat yang sama dalam respons (jika tempat itu masih ada).

Akan tetapi, perlu diketahui bahwa respons itu mungkin berisi ID tempat yang berbeda dari yang Anda minta. Untuk informasi selengkapnya, lihat ringkasan ID tempat.

Kirim masukan tentang...

location_on
Google Places API for iOS