Hızlı ve Doğrulanmış Kayıt uygulama kılavuzu

Genel Bakış

web iOS API

Google Haritalar Platformu; web (JS, TS), Android ve iOS için ve yerler, yol tarifleri ve Google'dan hakkında bilgi edinmek için web hizmetleri API'leri görebilirsiniz. Bu kılavuzdaki örnekler bir platform için yazılmıştır ancak belge bağlantıları diğer platformlarda uygulanmak üzere sağlanmıştır.

Hemen oluşturun!

Hızlı Oluşturucu "Google Cloud Console"daki bir eklenti kullanarak adres formu otomatik tamamlama JavaScript kodu oluşturan etkileşimli kullanıcı arayüzü.

Kullanıcılar, dijital dünyada yaşamaya ve faaliyet göstermeye alıştı. uygunluk, hız ve güvenliğin temel beklentiler olduğudur. Kredi kartı, banka hesabı veya kredi gibi bir şey için başvururken sürecin hızlı ve kolay olmasını bekliyorlar.

Ne kadar çok kullanıcı yinelenen veri yazmak veya girmek zorunda kalırsa o kadar az elinizde tutmak önemlidir. Hızlı, kolay ve hızlı Böylece, doğrulanmış bir kayıt deneyiminin kullanıcı deneyimini Böylece kullanıcıları sitenizde tutma konusunda daha fazla avantaja sahip olursunuz.

Manuel olarak girilen adresler, dönüşümlerin azalmasına neden olabilir ve hatalı olabilir. ve maliyetli teslimat hataları. Hızlı ve Doğrulanmış Kayıt, kaydolma işlemini gerçekleştirir daha hızlı, sadece birkaç başparmak dokunuşuyla yakındaki adresleri anında girilen adresi görsel olarak onaylayarak kullanıcının doğru adresi girdiklerinden emin olabilirsiniz. Kullanıcının mevcut konumunu kullanarak adresini belirlemesi, sahtekarlığın önlenmesine de yardımcı olur Ayrıca kullanıcıların ürün ve hizmetlerinize olan güvenini artırır. Doğrulama, sanal erişim sağlama konusundaki güveninizi de artırabilir. banka ve kredi kartı bilgilerini kullanabilirsiniz.

Bu konuda, Google Ads'de hızlı ve kolay bir şekilde Doğrulanmış Kayıt Google Haritalar Platformu deneyimi. Kullanıcılar büyük olasılıkla kaydolduğunda, bu konudaki uygulama örneklerinin çoğunu olarak Android'e odaklanacağız. (Sayfada örnek kaynağının tamamını burada bulabilirsiniz). Aynı işlemleri gerçekleştirmek için iOS SDK'larını da kullanabilirsiniz.

Aşağıdaki şemada, çözümün oluşturulmasında kullanılan temel API'ler gösterilmektedir (büyütmek için tıklayın).

API'ler etkinleştiriliyor

Bu önerileri uygulamak için Google Cloud Console:

Kurulum hakkında daha fazla bilgi için Başlarken Google Haritalar Platformu'nu kullanmaya başladı.

En iyi uygulamalar bölümleri

Aşağıda, bu konuda ele alacağımız uygulamalar ve özelleştirmeler verilmiştir.

  • . Onay işareti simgesi temel en iyi uygulamalardan biridir.
  • . Yıldız simgesi isteğe bağlıdır ancak önerilir özelleştirme seçenekleri sunar.
Giriş alanlarına otomatik tamamlama ekleme Adres formunu otomatik olarak doldurun. "Kullandıkça yaz" işlevi Tüm platformlarda kullanıcı deneyimini iyileştirmek ve adresi iyileştirmek daha doğru olmasını sağlayın.
Adresin görsel onayını sağlama Görsel bir onay olarak kullanıcıların adreslerini haritada görmesine izin verin doğru adresi girdiklerinden emin olun.
Kullanıcı tarafından girilen adresi cihazın konumuyla karşılaştırma Kullanıcının seçtiği veya girdiği adresini kullanıcı adıyla karşılaştırın bulundukları yerde olup olmadıklarını belirlemeye yardımcı olmak için, belirtilen adrestir. (Bunun işe yaraması için kullanıcıların evde olması gerekir oturum açmalarına izin veriyor.)
Hızlı Arama özelliğini daha da geliştirecek ipuçları Doğrulanmış Kayıt Adres girişini, aşağıdaki gibi eklemelerle daha da zenginleştirebilirsiniz: görünümünü ve tarzını özelleştirebileceğiniz, Kullanıcıların bir işletme veya önemli nokta olarak adını seçmelerini girin.

Giriş alanlarına otomatik tamamlama özelliği ekleniyor

Bu örnekte şunlar kullanılmaktadır: Android için Yerler SDK'sı Sunulan diğer kaynaklar: iOS | JavaScript

Otomatik Yer Tamamlama, uygulamanızda adres girişini basitleştirebilir ve Böylece daha yüksek dönüşüm oranları elde edebilir ve müşterileriniz için sorunsuz bir deneyim yaşayabilirsiniz. Otomatik tamamlama, "type-ahead" şeklinde tek bir hızlı giriş alanı sağlar adres kayıt adresi formunu otomatik olarak doldurmak için kullanılabilecek bir tahmindir. Otomatik Yer Tamamlama özelliğini kayıt işleminize dahil ederek şunları yapabilirsiniz:

  • Adres girişi hatalarını azaltın.
  • Kaydolma işlemindeki adım sayısını azaltın.
  • Mobil veya giyilebilir cihazlarda adres girişi deneyimini basitleştirin.
  • Tuş vuruşlarını ve müşterilerin kaydolması için gereken toplam süreyi önemli ölçüde azaltın.

Kullanıcı Otomatik tamamlama giriş kutusunu seçip yazmaya başladığında bir liste bir görünümdür.

Kullanıcı tahmin listesinden bir adres seçtiğinde, bu yanıtı göndererek adresi doğrulayıp konumu alabilirsiniz. Uygulamanız aşağıdaki örnekteki gibi adres giriş formunun doğru alanlarını doldurabilir: yer alır.

Videolar: Otomatik Yer Tamamlama özelliğiyle adres formlarını geliştirin

Adres formları

Android

iOS

Web

Google Haritalar Platformu, mobil cihazlar için Yer Otomatik Tamamlama widget'ı sağlar platformlar ve web üzerinde çalışıyor. Önceki resimlerde gösterilen widget, varsayılan olarak bir yerleşik otomatik tamamlama işlevine sahip arama iletişim kutusu Konum kapsamlı arama için optimizasyon.

Bu bölümde, Hızlı ve kolay bir şekilde Otomatik Yer Tamamlama özelliğinin nasıl uygulanacağı açıklanmaktadır. Doğrulanmış Kayıt.

Otomatik Yer Tamamlama widget'ını ekleme

Android'de otomatik tamamlama widget'ını Otomatik tamamlama amacı adres Satırı 1 giriş alanından Otomatik Yer Tamamlama'yı başlatan kullanıcı adresini girmeye başlar. Yazmaya başladıklarında Otomatik tamamlama tahminleri listesinden adresini seçebilmelidir.

İlk olarak, şunu kullanarak bir etkinlik başlatıcı oluşturun: ActivityResultLauncher bir sonucu dinler temel alınmıştır. Sonuç geri çağırması bir Yer nesnesi içerir Kullanıcının Otomatik Tamamlama'da seçtiği adrese karşılık gelen tahminler.

    private final ActivityResultLauncher<Intent> startAutocomplete = registerForActivityResult(
            new ActivityResultContracts.StartActivityForResult(),
            result -> {
                if (result.getResultCode() == Activity.RESULT_OK) {
                    Intent intent = result.getData();
                    if (intent != null) {
                        Place place = Autocomplete.getPlaceFromIntent(intent);

                        // Write a method to read the address components from the Place
                        // and populate the form with the address components
                        Log.d(TAG, "Place: " + place.getAddressComponents());
                        fillInAddress(place);
                    }
                } else if (result.getResultCode() == Activity.RESULT_CANCELED) {
                    // The user canceled the operation.
                    Log.i(TAG, "User canceled autocomplete");
                }
            });

Ardından, Otomatik Tamamlama intent'i yerleştirme ve Autocomplete.IntentBuilder. Son olarak, ActivityResultLauncher önceki kod örneğine bakalım.

    private void startAutocompleteIntent() {

        // Set the fields to specify which types of place data to
        // return after the user has made a selection.
        List<Place.Field> fields = Arrays.asList(Place.Field.ADDRESS_COMPONENTS,
                Place.Field.LAT_LNG, Place.Field.VIEWPORT);

        // Build the autocomplete intent with field, country, and type filters applied
        Intent intent = new Autocomplete.IntentBuilder(AutocompleteActivityMode.OVERLAY, fields)
                .setCountries(Arrays.asList("US"))
                .setTypesFilter(new ArrayList<String>() {{
                    add(TypeFilter.ADDRESS.toString().toLowerCase());
                }})
                .build(this);
        startAutocomplete.launch(intent);
    }

Otomatik Yer Tamamlama tarafından döndürülen adresi işleme

Daha önce ActivityResultLauncher tanımlanması, nelerin yapılması gerektiğini de tanımladı nasıl yapılır? Kullanıcı bir tahmin seçtiğinde, söz konusu tahmin ortaya koyar. Amaç Autocomplete.IntentBuilder tarafından oluşturulduğu için Autocomplete.getPlaceFromIntent() yöntemi Yer nesnesini çıkartabilir bazı ipuçları vereceğim.

    private final ActivityResultLauncher<Intent> startAutocomplete = registerForActivityResult(
            new ActivityResultContracts.StartActivityForResult(),
            result -> {
                if (result.getResultCode() == Activity.RESULT_OK) {
                    Intent intent = result.getData();
                    if (intent != null) {
                        Place place = Autocomplete.getPlaceFromIntent(intent);

                        // Write a method to read the address components from the Place
                        // and populate the form with the address components
                        Log.d(TAG, "Place: " + place.getAddressComponents());
                        fillInAddress(place);
                    }
                } else if (result.getResultCode() == Activity.RESULT_CANCELED) {
                    // The user canceled the operation.
                    Log.i(TAG, "User canceled autocomplete");
                }
            });

Buradan Place.getAddressComponents() numaralı telefonu arayıp her adresi eşleştirin bileşenini adres formundaki karşılık gelen giriş alanına ekleyerek alanında, kullanıcının seçtiği Yer'deki değerle birlikte

Manuel olarak girilen bir adres yerine tahminden adres verilerini yakalama adresin doğru olmasını sağlar, adresin bilinmesini ve kullanılmasını sağlar kullanıcılar tuş vuruşlarını azaltır.

Otomatik Yer Tamamlama özelliğini uygularken dikkat edilmesi gereken noktalar

Yer Otomatik Tamamlama özelliği, duruma göre esnek olmasını sağlayan bir dizi seçenek sunar. widget'tan daha fazlasını da kullanmak istiyorsanız uygulamadan bahsedeceğiz. Tekliflerinizi otomatikleştirmek ve optimize etmek için bir konumla tam olarak ihtiyacınız olan bilgileri elde etmenize yardımcı olan çeşitli hizmet kombinasyonu sağlayabilirsiniz.

  • ADDRESS form için "type" parametresini address olarak ayarlayarak tam açık adresle eşleşir. Daha fazla bilgi: Yer Otomatik Tamamlama isteklerinde desteklenen türler hakkında daha fazla bilgi edinin.

  • Uygun kısıtlamaları ve yanlılıkları belirleme . Veriye dayalı kararlar almak için herhangi bir eşleşmeyi yalnızca belirli bölgelerle etkilemek veya kısıtlamak için kullanılabilir.

    • Kısıtlanacak dikdörtgen sınırları ayarlamak için RectangularBounds kullanın bir bölgeye ait, yalnızca şuradaki adreslerin geçerli olduğundan emin olmak için setLocationRestriction() kullanın: bu alanlar döndürülür.

    • Yanıtları belirli bir ülke grubuyla kısıtlamak için setCountries() kullanın.

  • Eşleşmede belirli alanların eksik olması ihtimaline karşı alanları düzenlenebilir bırakın, ve gerekirse müşterilerin adresi güncellemelerine izin verebilirsiniz. Çoğu adres Otomatik Yer Tamamlama tarafından döndürülen yanıtlarda ya da apartman dairesi, daire veya apartman dairesi numaralarını içeriyorsa odağı Adres Satırı 2'ye (gerektiğinde, kullanıcıyı bu bilgileri doldurmaya teşvik etmek)

Adresin görsel onayını sağlama

Bu örnekte şunlar kullanılmaktadır: Android için Haritalar SDK'sı Sunulan diğer seçenekler: iOS | JavaScript

Adres girişi kapsamında kullanıcılara adresini haritada görebilirsiniz. Böylece kullanıcılar, emin olun.

Aşağıdaki şekilde adresin altında bir harita ve adreste bulunan bir raptiye gösterilmektedir girildi.

Aşağıdaki örnekte, harita eklemek için temel adımlar açıklanmaktadır. bazı yolları da görmüştük. Daha ayrıntılı bilgi için belgeleri inceleyin.

SupportMapFragment ekleniyor

İlk olarak, SupportMapFragment düzen XML dosyası.

    <fragment
        android:name="com.google.android.gms.maps.SupportMapFragment"
        android:id="@+id/confirmation_map"
        android:layout_width="match_parent"
        android:layout_height="match_parent"/>

Ardından, henüz yoksa parçayı programatik olarak ekleyin.

    private void showMap(Place place) {
        coordinates = place.getLatLng();

        // It isn't possible to set a fragment's id programmatically so we set a tag instead and
        // search for it using that.
        mapFragment = (SupportMapFragment)
                getSupportFragmentManager().findFragmentByTag(MAP_FRAGMENT_TAG);

        // We only create a fragment if it doesn't already exist.
        if (mapFragment == null) {
            mapPanel = ((ViewStub) findViewById(R.id.stub_map)).inflate();
            GoogleMapOptions mapOptions = new GoogleMapOptions();
            mapOptions.mapToolbarEnabled(false);

            // To programmatically add the map, we first create a SupportMapFragment.
            mapFragment = SupportMapFragment.newInstance(mapOptions);

            // Then we add it using a FragmentTransaction.
            getSupportFragmentManager()
                    .beginTransaction()
                    .add(R.id.confirmation_map, mapFragment, MAP_FRAGMENT_TAG)
                    .commit();
            mapFragment.getMapAsync(this);
        } else {
            updateMap(coordinates);
        }
    }

Parçaya herkese açık kullanıcı adı getirme ve geri çağırmayı kaydetme

  1. Parçaya bir herkese açık kullanıcı adı eklemek için FragmentManager.findFragmentById yöntemini nasıl kullanabilirsiniz? düzen dosyanızdaki parçanın kaynak kimliği. Parçayı eklediyseniz dinamik olarak herkese açık kullanıcı adını zaten aldığınız için bu adımı atlayın.

  2. Şunu ayarlamak için getMapAsync yöntemini çağırın: bir geri çağırmadır.

Örneğin, parçayı statik olarak eklediyseniz:

Kotlin

val mapFragment = supportFragmentManager
    .findFragmentById(R.id.map) as SupportMapFragment
mapFragment.getMapAsync(this)

      

Java

SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager()
    .findFragmentById(R.id.map);
mapFragment.getMapAsync(this);

      

Stil oluşturma ve haritaya işaretçi ekleme

Harita hazır olduğunda stili ayarlayın, kamerayı ortalayın ve istediğiniz yere işaretçi ekleyin. girilen adresin koordinatları. Aşağıdaki kodda, JSON nesnesinde tanımlı bir şekilde tanımlanabilir veya alternatif olarak şununla tanımlanmıştır: Bulut Tabanlı Haritalar Stili.

    @Override
    public void onMapReady(@NonNull GoogleMap googleMap) {
        map = googleMap;
        try {
            // Customise the styling of the base map using a JSON object defined
            // in a string resource.
            boolean success = map.setMapStyle(
                    MapStyleOptions.loadRawResourceStyle(this, R.raw.style_json));

            if (!success) {
                Log.e(TAG, "Style parsing failed.");
            }
        } catch (Resources.NotFoundException e) {
            Log.e(TAG, "Can't find style. Error: ", e);
        }
        map.moveCamera(CameraUpdateFactory.newLatLngZoom(coordinates, 15f));
        marker = map.addMarker(new MarkerOptions().position(coordinates));
    }

(Tam kod örneğine bakın)

Harita denetimlerini devre dışı bırakma

Ek harita denetimleri olmadan konumu göstererek haritayı basit tutmak için (ör. pusula, araç çubuğu veya diğer yerleşik özellikler) kullanıyorsanız Bulamadığınız kontroller gerekir. Android'de diğer bir seçenek de basit mod etkileşimlilik.

Kullanıcı tarafından girilen adres, cihaz konumuyla karşılaştırılıyor

Adres kanıtı (kullanıcının adres kanıtı) elde etme girdikleri adres; uzaktan çalışma gibi nedenlerle karmaşık olabilir. kullanıcının konumu, yeni bir adrese taşınan kullanıcılar veya dijital işletmeler kullanıcıların fiziksel bir konumu olmayan (dijital bankalar gibi) elektrik/su/doğalgaz/internet faturaları veya diğer faturalarla adres kanıtı sağlamak için belgelerinden faydalanabilirsiniz. Kullanıcı adreslerini doğrulamak için dijital yollar sağlamak, daha hızlı ve sorunsuz bir kayıt deneyimi sunar.

Adres kontrolü almada güvenlik çok önemlidir, özellikle de dijital ortamda kayıt sürecidir. Bu bölümde, kontrol etmeyle ilgili yönergeler ve örnekler verilmiştir. bir kullanıcının kayıt sırasında bulunduğu konumun, kullanıcı olarak girdiği adresle eşleşip eşleşmediğini sahip olabilir.

Girilen bir adresin cihaz konumuyla karşılaştırılması işlemi için şu adımları uygulayın:

  1. Kullanıcı tarafından girilen adresi coğrafi koordinatlara dönüştürme.
  2. Cihazın konumunu almak için kullanıcıdan izin isteme
  3. Girilen adres ile cihaz konumu arasındaki mesafenin hesaplanması. Her şeyin yolunda gitmesini adres-konum eşleşmesi için sayılan maksimum mesafe.

Aşağıdaki şekilde, kullanıcılardan karşılaştırma yapmalarını nasıl isteyeceğinize bulunduğu konuma gitmesine yardımcı olur.

Kullanıcı tarafından girilen adresi coğrafi koordinatlara dönüştürme

Bu örnekte şunlar kullanılmaktadır: Android için Yerler SDK'sı Sunulan diğer kaynaklar: iOS | JavaScript | Coğrafi Kodlama API'si

Kullanıcılar adres doğrulamasını kabul ettikten sonra ("Şimdi orada olduğumu doğrula"ya dokunarak) içerir), mevcut adresle mevcut adresi karşılaştırmanın ilk adımı konumu, girilen adresi coğrafi koordinatlara dönüştürüyor.

Kullanıcı Otomatik Yer Tamamlama özelliğini kullanarak adresini seçtiyse, Şurada gösterildiği gibi Yer Otomatik Tamamlama alanı listesindeki Place.Field.LAT_LNG: Otomatik Yer Tamamlama widget'ını ekleyin ve Place.getLatLng() yöntemini kullanabilirsiniz.

coordinates = place.getLatLng();

Kullanıcı adresini manuel olarak girdiyse veya Place'ten sonra düzenleme yaptıysa Alanları Otomatik Tamamlama doldurdu; Android Geocoder hizmeti veya Geocoding API koordinatlarını arayabilirsiniz.

Örnek

https://maps.googleapis.com/maps/api/geocode/json?address=1600%20Amphitheatre%2BParkway%2C%20Mountain%20View%2C%20CA%2094043&key=YOUR_API_KEY

URL olarak kodladığınızdan emin olun Geocoding API'ye yapılan çağrı.

URL kodlaması hızlı referansı: %20 = boşluk, %2B = + (artı), %2C = , (virgül)

Cihazın konumunu almak için kullanıcıdan izin isteme

Kullanıcının cihazının konumunu öğrenmek için kullanıcı izni istemeniz gerekir: Konum hizmetlerini etkinleştirme konumu algılayan uygulamalar geliştirme, şu akışı uygulayın:

  • Tek seferlik bir izin olarak, belirli bir düzeyde konum izni isteme (ACCESS_FINE_LOCATION).

  • Kullanıcı konum erişimi verirse kullanıcının konumunu alın.

  • Kullanıcı konum erişimini reddederse reddetme sürecini sorunsuz bir şekilde tamamlayın. Örneğin, Arkadaş Bitkiler projenizde (varsa) kullanıcının geçerli konumunu saklamıyorsunuz):

    "Uygulamanın tam konumunuzu bilmesine izin vermezseniz hesabınızı etkinleştirmek için postayla doğrulama yapın. [Tamam]"

Aşağıdaki şekilde, kullanıcıların cihazınızın konumunu alın.

Konum iznini kontrol etmek için şunu yapacak bir etkinlik başlatıcı hazırlayın: sonucu dinle Arkadaş Bitkiler Projesi’nin ActivityResultLauncher. Sonuç geri çağırması, kullanıcının izin verip vermediğini gösteren bir Dize içerir. veya istenen izni reddetti.

    // Register the permissions callback, which handles the user's response to the
    // system permissions dialog. Save the return value, an instance of
    // ActivityResultLauncher, as an instance variable.
    private final ActivityResultLauncher<String> requestPermissionLauncher =
            registerForActivityResult(new ActivityResultContracts.RequestPermission(), isGranted -> {
                if (isGranted) {
                    // Since ACCESS_FINE_LOCATION is the only permission in this sample,
                    // run the location comparison task once permission is granted.
                    // Otherwise, check which permission is granted.
                    getAndCompareLocations();
                } else {
                    // Fallback behavior if user denies permission
                    Log.d(TAG, "User denied permission");
                }
            });

Ardından, uygulamanın zaten ACCESS_FINE_LOCATION izni olup olmadığını kontrol edin. Açılmazsa izin isteği başlatarak kullanıcıdan izin isteyin. etkinliği tıklayın.

    private void checkLocationPermissions() {
        if (ContextCompat.checkSelfPermission(this, ACCESS_FINE_LOCATION)
                == PackageManager.PERMISSION_GRANTED) {
            getAndCompareLocations();
        } else {
            requestPermissionLauncher.launch(
                    ACCESS_FINE_LOCATION);
        }
    }

ACCESS_FINE_LOCATION izni verildikten sonra çok kaynaklı konumu kullanın bilinen son konumu almak için sağlayıcı ve bundan bir LatLng nesnesi oluşturun.

        FusedLocationProviderClient fusedLocationClient =
                LocationServices.getFusedLocationProviderClient(this);

        fusedLocationClient.getLastLocation()
                .addOnSuccessListener(this, location -> {
                    // Got last known location. In some rare situations this can be null.
                    if (location == null) {
                        return;
                    }

                    deviceLocation = new LatLng(location.getLatitude(), location.getLongitude());
                    // ...
                });
    }

Girilen adres ile cihaz konumu arasındaki mesafe hesaplanıyor

İki enlem/boylam koordinatı arasındaki mesafeyi hesaplamak için matematikten yararlanma (adres ve cihaz konumu girilir). Açık kaynak Android Yardımcı Program Kitaplığı için Haritalar SDK'sı küresel mesafeyi hesaplamak için bazı kullanışlı yöntemler sunar iki nokta arasında geçiş yapalım.

İlk olarak, aşağıdakini ekleyerek Android Utility Library için Haritalar SDK'sını yükleyin: uygulamanızın build.gradle.kts dosyasına bağımlılığı:

dependencies {


    // Utility Library for Maps SDK for Android
    // You do not need to add a separate dependency for the Maps SDK for Android
    // since this library builds in the compatible version of the Maps SDK.
    implementation("com.google.maps.android:android-maps-utils:3.8.2")
}

Bilinen son cihaz konumunu aldıktan sonra etkinlik dosyasına geri dönüp ve bu iki yeri "eşleşti" olarak kabul etmek için metre cinsinden bir yarıçap tanımlar. Yarıçap, GPS doğruluğundaki değişkenliği hesaba katacak kadar büyük olmalıdır ve kullanıcının girdiği adresteki yerin büyüklüğü. Örneğin:

private static final double acceptableProximity = 150;

Ardından, computeDistanceBetween() yardımcı program kitaplığı yöntemini kullanın kullanıcı tarafından girilen konum ile cihaz konumu arasındaki mesafeyi hesaplama adres konumu. Uzaklık yukarıda tanımlanan yarıçap dahilindeyse eşleşen konumları göz önünde bulundurun.

// Use the computeDistanceBetween function in the Maps SDK for Android Utility Library
// to use spherical geometry to compute the distance between two Lat/Lng points.
double distanceInMeters = computeDistanceBetween(deviceLocation, enteredLocation);
if (distanceInMeters <= acceptedProximity) {
    Log.d(TAG, "location matched");
    // TODO: Display UI based on the locations matching
} else {
    Log.d(TAG, "location not matched");
    // TODO: Display UI based on the locations not matching
}

(Tam kod örneğine bakın)

Adres ve konum eşleşiyorsa uygulamada aşağıda gösterildiği gibi bir onay görüntüleyebilirsiniz aşağıdaki şekilde verilmiştir.

Hızlı ve arama deneyimini daha da geliştirmeye yönelik ipuçları Doğrulanmış Kayıt

Kullanıcıların işletmeye veya önemli yere göre adres girmesine izin ver girin. "İleriye doğru yazın" tahmin hizmeti yalnızca adresler için değil, ancak kullanıcıların işletme veya önemli nokta adları girmesine izin vermeyi de seçebilirsiniz. Hem adres hem de kuruluş adı girilmesine izin vermek için Otomatik tamamlama tanımındaki types özelliği.

Otomatik Yer Tamamlama kutusunun görünümünü ve tarzını, emin olun. Mekan'ın görünümünü ve tarzını kontrol etmeyi tercih ediyorsanız Google'ın widget'ını kullanmak yerine uygulamanızda "Otomatik tamamlama" özelliğini Otomatik Tamamlamayı programatik olarak yerleştirme kullanıcı arayüzünü otomatik olarak tamamlamak için kullanın.