Ana içeriğe atla
Konum tabanlı segmentasyon, kullanıcılarınızın bulunduğu yere göre mesaj göndermenize olanak tanır. OneSignal, ülke, GPS koordinatları veya özel etiketlere göre kullanıcıları segmente edebilir — fiziksel konuma dayalı zamanlı ve ilgili ulaşım oluşturabilirsiniz. Kullanıcılar uygulamanızla etkileşime girdikçe ve konum takibi etkinleştirildiğinde, koordinatları neredeyse gerçek zamanlı olarak güncellenir ve Journeys veya herhangi bir mesaj oluşturma aracı aracılığıyla mesaj göndermek için kullanılabilir.
OneSignal varsayılan olarak GPS konumunu takip etmez.SDK, uygulamanız (1) doğru izinlere ve bağımlılıklara sahip olmadıkça, (2) OneSignal ile paylaşımı açıkça etkinleştirmedikçe ve (3) kullanıcı konum iznini vermediği sürece enlem veya boylam toplamaz. Daha fazla ayrıntı için aşağıdaki Konum takibi kurulumu bölümüne ve blog yazımıza bakın: You’re in Control: How Location Actually Works in OneSignal’s SDK.

Ülkeye göre hedefleme

Ülke, cihazın IP adresiyle belirlenir ve kullanıcı uygulamanızı her açtığında otomatik olarak güncellenir. Segmentlerde country veri filtresini veya API filters parametresini kullanın.

Konuma göre hedefleme (enlem, boylam ve yarıçap)

Mobil uygulamanız GPS konumunu topluyor ve OneSignal ile paylaşıyorsa, SDK kullanıcının koordinatlarını yaklaşık olarak her 5 dakikada bir günceller (izin ve sistem kurallarına göre). Uygulama zorla durdurulursa, kullanıcı tekrar açana kadar konum takip edilemez.

Konum takibi kurulumu

Konum takibi üç adım gerektirir:
1

Uygulamanıza konum izinleri ve bağımlılıkları ekleyin

Uygulamanızın yerel konum izinlerini yapılandırın ve gerekli bağımlılıkları ekleyin.
LocationManager.startGetLocation: not possible, no location dependency found hatasını görürseniz, uygulamanızda gerekli konum bağımlılığı eksik demektir. Android için yaygın bir düzeltme, app/build.gradle dosyanıza Google Play Services konum kitaplığını eklemektir:
implementation 'com.google.android.gms:play-services-location:21.0.1'
2

OneSignal ile konum paylaşımını etkinleştirin

SDK’nın cihazın koordinatlarını OneSignal’e göndermesine izin vermek için Location.setShared(true) çağrısı yapın. Bu olmadan, uygulamanız OneSignal’e konum verisi göndermez.
OneSignal.Location.setShared(true);
Tüm platform örnekleri için Mobile SDK referansına bakın.
3

Kullanıcıdan konum izni isteyin

Location.requestPermission() kullanarak sistem konum izni istemini tetikleyin veya daha iyi opt-in oranları için uygulama içi mesajı yumuşak ön istem olarak kullanın.
OneSignal.Location.requestPermission();
Tüm platform örnekleri için Mobile SDK referansına bakın.
Konum takibi etkinleştirildikten sonra şunları yapabilirsiniz:
  • location filtresini kullanarak segmentler oluşturun (yarıçap hedefleme).
  • Create message API’yi kullanarak mesajları tetikleyin.
OneSignal segment builder showing the location radius filter with latitude, longitude, and radius fields

Web push enlem ve boylam takibi

OneSignal, web için enlem/boylam toplamaz. Ancak, web uygulamanızdan konumu ayarlamak için etiketleri kullanabilir veya sunucunuzdan konumu ayarlamak için Update User API’yi kullanabilirsiniz. Etiketleme örneği:
  1. Tarayıcının Geolocation API’sini kullanarak web uygulamanızda konum erişimi isteyin.
  2. Kullanıcının koordinatlarını algılamak için JavaScript kullanın.
  3. Bu koordinatları etiketler kullanarak OneSignal’e gönderin.
OneSignal.User.addTags({
  lat: "37.160",
  long: "-117.773"
});
Etiketler ayarlandıktan sonra, aralık filtreleri kullanarak coğrafi olarak sınırlanmış segmentler oluşturun: Örnek segment: Etiket "lat" > 37 AND "lat" < 38 AND "long" > -118 AND "long" < -117

Şehre veya özel konuma göre hedefleme

OneSignal yerel olarak şehri veya alan kodlarını algılamaz. Şehre veya özel konuma göre hedeflemek için:
  • Kullanıcıların bir formda şehir veya bölge girmesine izin verin.
  • Veya koordinatlardan şehri çıkarmak için JavaScript ile ters coğrafi kodlama (örn. Google Maps API) kullanın.
  • Şehir adını bir veri etiketi olarak gönderin.
OneSignal.User.addTag("city", "San Francisco");

Radar ile coğrafi sınırlama

OneSignal, önde gelen bir coğrafi konum platformu olan Radar aracılığıyla gelişmiş coğrafi sınırlamayı destekler. Radar’ın SDK’ları ve API’leri ile şunları yapabilirsiniz:
  • Kullanıcılar tanımlanmış alanlara girdiğinde veya çıktığında bildirimleri tetikleyin.
  • Teslimat ve teslim alma etkinliğini takip edin.
  • Bir konumdaki varlığı doğrulayın.
  • Mağaza buluculara, konuma dayalı tekliflere ve daha fazlasına güç verin.
Başlamak için Radar entegrasyon belgelerini ziyaret edin veya onboarding desteği için Radar ile iletişime geçin.

SSS

Konum takibi web’de çalışıyor mu?

OneSignal, web tarayıcılarından GPS koordinatları toplamaz. Web push ile konum tabanlı segmentler kullanmak için tarayıcının Geolocation API’sinden koordinatları toplayın ve bunları etiket olarak saklayın. Yukarıdaki Web push enlem ve boylam takibi bölümüne bakın.

Uygulamam neden konum takip etmiyor?

Üç kurulum adımının tamamının tamamlandığını doğrulayın: konum izinleri ve bağımlılıklar uygulamanıza eklenmiş, Location.setShared(true) çağrılıyor ve kullanıcı konum izni vermiş. LocationManager.startGetLocation: not possible, no location dependency found görüyorsanız, app/build.gradle dosyanıza play-services-location bağımlılığını ekleyin. Ayrıntılar için Konum takibi kurulumu bölümüne bakın.

SDK konumu ne sıklıkla güncelliyor?

Konum takibi etkinleştirildiğinde, SDK uygulama kullanımdayken yaklaşık olarak her 5 dakikada bir koordinatları günceller. Uygulama zorla durdurulursa, kullanıcı uygulamayı tekrar açana kadar konum güncellemeleri duraklar.

Kullanıcıları şehre göre hedefleyebilir miyim?

Yerel olarak hayır. OneSignal ülkeyi (IP adresi aracılığıyla) ve GPS koordinatlarını (SDK aracılığıyla) takip eder, ancak şehir veya alan kodunu takip etmez. Ters coğrafi kodlama hizmetini kullanarak koordinatlardan şehri çıkarabilir ve etiket olarak saklayabilirsiniz. Şehre veya özel konuma göre hedefleme bölümüne bakın.

İlgili sayfalar

Mobile SDK konum referansı

setShared(), requestPermission() ve konum olay dinleyicileri için tam API referansı.

Konum opt-in istemi

Yerel konum izni istemeden önce yumuşak ön istem olarak uygulama içi mesaj kullanın.

Segmentler

Konum filtreleri, etiketler ve kullanıcı özellikleri kullanarak kitle segmentleri oluşturun.

Radar entegrasyonu

Radar aracılığıyla gelişmiş coğrafi sınırlama, seyahat takibi ve konum doğrulama.