Yerel Uygulama Yükleme İstemi

Yerel uygulama yükleme istemi, kullanıcıların hızlı bir şekilde ve uygulama mağazasını kullanarak yerel uygulamanızı cihazlarına sorunsuz şekilde yükleyebilirsiniz. ve rahatsız edici bir geçiş reklamı göstermeden yalnızca tarayıcıdan

Ölçütler neler?

Yerel uygulama yükleme isteminin kullanıcıya gösterilmesi için sitenizin aşağıdaki ölçütleri karşılaması gerekir:

Bu ölçütleri karşıladığınızda bir beforeinstallprompt etkinliği tetiklenir. Kullanıcıdan yerel uygulamanızı yüklemesini istemek için bu özelliği kullanabilirsiniz.

Gerekli manifest özellikleri

Kullanıcıdan yerel uygulamanızı yüklemesini istemek için iki mülk eklemeniz gerekir web uygulaması manifest dosyanıza, prefer_related_applications ve related_applications.

"prefer_related_applications": true,
"related_applications": [
    {
    "platform": "play",
    "id": "com.google.samples.apps.iosched"
    }
]

prefer_related_applications özelliği, tarayıcıya web uygulaması yerine yerel uygulamanızla kullanmanızı sağlar. Bu değeri ayarlamadan bırakırsanız veya false değerine ayarlanırsa tarayıcı, kullanıcıdan bunun yerine web uygulamasını yüklemesini ister.

related_applications, şunu belirten nesnelerin listesini içeren bir dizidir: tercih ettiğiniz yerel uygulamayla ilgili bir e-posta gönderin. Her nesne bir platform ve bir id özelliği içermelidir. platform, play olduğunda id ise Play Store uygulama kimliğinizdir.

Yükleme istemini göster

Yükleme iletişim kutusunu görüntülemek için şunları yapmanız gerekir:

  1. beforeinstallprompt etkinliğini dinleyin.
  2. Yerel uygulamanızın bir düğme veya başka bir yöntemle yüklenebileceğini kullanıcıya bildirin öğesi oluşturabilirsiniz.
  3. Kaydedilen beforeinstallprompt uygulamasında prompt() numarasını çağırarak istemi göster unutmayın.

beforeinstallprompt için dinle

Ölçütler karşılanırsa Chrome bir beforeinstallprompt etkinliği tetikler. Uygulamanızın yüklenebileceğini belirtmek için bunu kullanabilir ve ardından kullanıcının uygulamayı yüklemesine izin verin.

beforeinstallprompt etkinliği tetiklendiğinde etkinliğe referans olarak kaydedin. ve kullanıcı arayüzünüzü, kullanıcının uygulamanızı yükleyebileceğini belirtecek şekilde güncelleyin.

let deferredPrompt;

window.addEventListener('beforeinstallprompt', (e) => {
  // Prevent Chrome 67 and earlier from automatically showing the prompt
  e.preventDefault();
  // Stash the event so it can be triggered later.
  deferredPrompt = e;
});

Kullanıcıya uygulamanızın yükleyebileceğini bildirme

Kullanıcıyı uygulamanın yüklenebileceğini bildirmenin en iyi yolu bir düğme eklemektir eklemeyi deneyin. Tam sayfa geçiş reklamı veya can sıkıcı ya da dikkat dağıtıcı olabilecek başka öğeler göstermeyin.

window.addEventListener('beforeinstallprompt', (e) => {
  // Prevent Chrome 67 and earlier from automatically showing the prompt
  e.preventDefault();
  // Stash the event so it can be triggered later.
  deferredPrompt = e;
  // Update UI notify the user they can add to home screen
  btnAdd.style.display = 'block';
});

İstemi göster

Yükleme isteminin gösterilmesi için kayıtlı etkinlikte prompt() öğesini çağırın kullanıcı hareketi vardır. Kullanıcının ödeme yapmasını isteyen kalıcı bir iletişim kutusu gösterilir. eklemek için kullanabilirsiniz.

Ardından, userChoice mülkü tarafından verilen sözü dinleyin. İlgili içeriği oluşturmak için kullanılan Protocol, istemden sonra outcome özelliğine sahip bir nesne döndürür. ve kullanıcının yanıt verdiğini gösterir.

btnAdd.addEventListener('click', (e) => {
  // hide our user interface that shows our A2HS button
  btnAdd.style.display = 'none';
  // Show the prompt
  deferredPrompt.prompt();
  // Wait for the user to respond to the prompt
  deferredPrompt.userChoice
    .then((choiceResult) => {
      if (choiceResult.outcome === 'accepted') {
        console.log('User accepted the A2HS prompt');
      } else {
        console.log('User dismissed the A2HS prompt');
      }
      deferredPrompt = null;
    });
});

Ertelenen etkinlikte prompt() işlevini yalnızca bir kez çağırabilirsiniz. Kullanıcı görünümü kapatırsa beforeinstallprompt etkinliği şu tarihte etkinleşene kadar beklemeniz gerekir: sonraki sayfada gezinme seçeneğidir.

İçerik güvenliği politikasını kullanırken dikkat edilmesi gereken özel noktalar

Sitenizde kısıtlayıcı bir İçerik Güvenliği Politikası varsa Chrome'un uygulamanızla ilişkili simgeyi Play Store'dan indirebilmesi için img-src yönergesine *.googleusercontent.com eklediğinizden emin olun.

Bazı durumlarda *.googleusercontent.com istenenden daha ayrıntılı olabilir. Uygulama simgesinin URL'sini belirlemek için bir Android cihazda uzaktan hata ayıklama yaparak bu alanı daraltabilirsiniz.