Uygulama lisanslama – Nasıl
Ön koşullar
- AndroidPIT Uygulama Merkezi 1.5 veya üstü
- AndroidPIT Uygulama Merkezi 1.6 veya üstü
- AndroidPIT Licensing Library
- Android License Verification Library (LVL)
- Eclipse Android Development Tools (ADT)
LVL kullanıyor musun?
Eğer Android License Verification Library kullanıyorsan, AndroidPIT Licensing Library kullanmak senin için daha kolay olacaktır.
1.
AndroidPIT Licensing Library indir ve ve projeni ekle.
2.
Aşağıdaki iki değişken tanımlamasını değiştir
private LicenseCheckerCallback mLicenseCheckerCallback;
|
içinde
private IAndroidPitLicenseCheckerCallback mLicenseCheckerCallback;
|
3.
Denetleyici oluşturmayı değiştir
mChecker = new LicenseChecker(
|
içinde
mChecker = new AndroidPitLicenseChecker(
|
4.
Dinleyici tanımını değiştir(örnek)
class MyLicenseCheckerCallback implements LicenseCheckerCallback
|
İçinde
class MyLicenseCheckerCallback implements IAndroidPitLicenseCheckerCallback
|
5.
applicationError içerisindeki errorCodetipini değiştir.
public void applicationError(ApplicationErrorCode errorCode)
|
içinde
public void applicationError(AndroidPitLicenseCheckCode errorCode)
|
ve hatalarla alakalı AndroidPIT yanıt kodlarını genişlet (aşağıya bakınız).
İşte bu kadar! Hem kontrol modu hem de allow() and dontAllow() geri arama yöntemlerinin değiştirilmesine gerek yoktur.
Hızlı çalıştır
The AndroidPIT Licensing Library özelliği Google'ın Android License Verification Library (LVL) özelliğiykle büyük benzerliğe sahiptir. AndroidPIT Licensing Library özelliğini kullanabilmek için Android License Verification Library (LVL) and the AndroidPIT Licensing Library i projenize ekleyin. onCreate()metodunuzda AndroidPitLicenseChecker ve IAndroidPitLicenseCheckerCallback yerine kullanılır. Buna ek olarak sana AndroidPIT içerisindeki geliştirici profilinde kullanılmak üzere, tarafımızdan sana gönderilecek bir lisans anahtarına ihtiyacın var. Bir aktivite örneği şöyle görünecektir:
import android.app.Activity;
|
Ayrıca AndroidPIT üzerinde geçerli lisans kontrolü yaparken aynı zamanda zahmetsiz bir şekilde Android Piyasasını da tarayabilirsin. Bu işlemi yapabilmek için AndroidPitLicenseChecker kurulumunu yaparak Google şartları ve ortak anahtarlarını al. LVL kurulumunun diğer adımları için LVL documentationa danış.
/**
|
Tüm detaylar
AndroidPIT lisanslama sistemi Google tarafından geliştirilmiş Android License Verification Library (LVL) esas alınarak yapılmıştır.Bu sistem AndroidPIT Uygulama Merkezi vasıtası ile satın alınmış uygulamaların geçerliliğini test eder. Bu lisanslama sağlayıcısına internet üzerinden bağlanılır. Bunun dışında son olarak kullanıcının geçerli bir AndroidPIT hesabının olması gereklidir.
AndroidPIT Licensing Library yardımıyla uygulaman Uygulama Merkezi tarafından son kullanıcın uygulamayı çalıştırmak için geçerli bir lisansa sahip olup olmadığını kontrol eder. Uygunluk kontrolü uygulama her başlatıldığında yapılır. En erken kontrol internet bağlantısı yapılır yapılmaz gerçekleşir.Bu arada ön bellek kontrolü en son istek temel alınarak gerçekleştirilir(ön bellek uygulamalarında zaman çerçevesinin her zaman değiştirilebileceğini aklınızda bulundurun).
Adım adım
Bu adım adım uygulama Eclipse ADT kullandığınız varsayımına dayanır. başka bir geliştirme aracı kullanmanız durumunda, daha fazla adıma ihtiyaç duyabilirsiniz.
AndroidPIT Licensing libraryve indir. Android License Verification Library (LVL)ve Eclipse projesi olarak ekle. AndroidPIT Licensing Library kullanabilmek için en azından Android 1.6 ile çıkartılmış Android API versiyon 4 gereklidir. Yeni bir Android uygulaması yaratmak ve androidpit lisanslama kütüphanesini kullanmak için uygulama projesine bağlamak imkanı vardır. Kütüphanenin Android License Verification Library (LVL)ile bağlantı linklerini de kontrol edin.
Projem; çözülmemiş semboller gösteriyor ya da benim uygulamalarımı derleyemiyor.
Lütfen Android Projenizin iletişim tercihleri içerisinde yer alan Google LVL ve AndroidPIT Licensing Library yollarını kontrol edin. Bu yolların dosya sisteminizdekilerle aynı olması gerekmektedir.
AndroidPIT Licensing Library ayarları bunun gibi gözükmelidir:
Lisans doğrulama kodunu nasıl yapılandırabilirim?
Licensing Library 'nin AndroidPIT Uygulama Merkezi üzerinde geçerli lisans kontrolüne izin vermek için, eyleminizin MyLicenseCheckerCallback sınıfındaki bir örneğinionCreate()arayın. Sonuçlanan kod şu şekilde gözükebilir:
mLicenseCheckerCallback = new MyLicenseCheckerCallback();
|
Ayrıca constructor size AndroidPIT web sayfasındaki profilinizde sağladığımız bas64 ile kodlanmış genel anahtara ihtiyaç duyulabilir.
Nasıl lisans sunucusundan bir mesaj alabilirsin?
Lisans AndroidPitLicenseChecker üzerinde checkAccess() çağrılarak kontrol edilir. Bu yöntem IAndroidPitLicenseCheckerCallback arayüz kullanan bir nesne geri çağırma nesnesine ihtiyaç duyar. allow() yöntemi Licensing Library içerisinde sizi lisans onaylaması yönünde bilgilendirir. Herhangi bir başka durumda dontAllow() uyarısı alınır. Ayrıca applicationError() sizi lisanslama kontrolü sırasında oluşabilecek hatalar hakkında uyarır. Bu üç aşamada olabilecek eylemler üzerinde tam kontrole sahipsiniz
class MyLicenseCheckerCallback implements IAndroidPitLicenseCheckerCallback
|
Nasıl ek olarak Andoid Piyasasındaki bir lisansı doğrulayabilirim?
İlaveten lisanslama sistemimizi kontrol etmeniz için Googleʼs Android License Verification Library (LVL)’ nin kolay entegre edilebilir bir sürümünü sağlıyoruz. Bunu entegre etmek için AndroidPitLicenseChecker üzerinde LVL policy and public key olşturucuyu ekleyin. Lisans kontrolü License Library üzerinden başlayacaktır Google lisans kontrolü başarılı olduğu takdirde allow() şeklinde bilgilendirilirsiniz. Olumsuz geri dönüşler AndroidPIT lisanslama server ları üzerinde ek bir talep sonucunu doğurur. Bu taleplerinde olumsuz sonuçlanması durumund Licensing Library den olumsuz cevap alırsınız.
Bu örnek Google API belgelerine dayanmaktadır.
mChecker = new AndroidPitLicenseChecker(
|
Lisans sunucusundan farklı hata mesajlarını nasıl test edebilirim?
AndroidPIT üzerindeki geliştirici profilinizdeki lisanslama sayfasında bir yanıtlama kodu oluşturabilirsiniz. Uygulamanızın lisanslama serverımızdan gelen hata mesajlarını doğru bir şekilde yanıtlayıp yanıtlamadığını test etmeniz açısından fydalıdır. Bunu başlatmak için listeden doğru değeri seçmek gerekir. Test cihazınızda geliştirici hesabınız ile giriş yaptıktan sonra, lisanslama serverı daima seçilen yanıtlama kodu ile yanıt verecektir.
Uygulama Merkezi sonucunu ön belleğe almayı nasıl iptal edebilirim?
Uygulama Merkezi en son isteğin sonuçlarını en azından bir gün ya da mobil cihaz internet üzerinden lisanslama merkezimize bağlanılana kadar saklar. Bu saklama arabellek işlemini kaldırmak için, lisanslama kontrol edicisi içindeki debug modunu etkinleştirebilirsiniz. Bunu yapmak için setDebug(true) işlemini gerçekleştirin. Uygulamanızı yayınlamadan önce debug modunu kapatmayı unutmayın.
Eğer bir kullanıcı Uygulama Merkezi'ne üye değilse ne olur?
Uygulama Merkezi’nde hiç ya da geçersiz kimlik bilgileri saklandığında, The Licensing Library – Lisanslama Kütüphanesi bir popup diyalog renceresi gösterir ve kullanıcının AndroidPIT e-posta adresi ve şifresini sorar.
Lisans talebinin lisans sunucusuna ulaştığına nasıl emin olurum?
AndroidPIT license library-lisanslama kütüphanesi AndroidPitSignedLicenseChecker sınıfı içerir. Bu sınıf, komutun lisans serverına gidip gitmediğini kontrol etme imkanı sağlar. Kütüphane gelen imzayı AndroidPitLicenseingResponseValidator kullanarak onaylar. Lüfen bu mekanizmayı hiçbir lisans state ara bellek işlemi olmadığı şeklinde algılayın. Tüm yanıtlar girilen veriye göre oluşturulur. Eğer kullanıcının lisans serverına bağlantısı yoksa, kütüphane şu şekilde bir cevap verir: ERROR_NOT_CONNECTED.
AndroidPitSignedLicenseChecker kullanılmış bir örnek şu şekilde gözükebilir:
AndroidPitSignedLicenseChecker mChecker;
|
Kendi lisans doğrulamamı kullanabilir miyim? İmza doğrulamasını kendim yapmak istiyorum.
Evet bu mümkündür. Lütfen ILicensingResponseValidator arayüzünü uygulayın ve AndroidPitSignedLicenseChecker uygulama ınıfının bir örneğini sağlayın. Bu sınıf iki metod uygular. getSalt()checkResponse() metodu AndroidPitLicenseCheckCode.NOT_LICENSED yanıt verilerini doğrulamak içindir. Doğrulama sunucusundan yanıt kodu başarılı olduğu takdirde servera geri dönülür. Örnek uygulama olarak AndroidPIT Licensing Library AndroidPitLicensingResponseValidator a danışılabilir.
Projem numaralandırmayı bulamıyorde.androidpit.AndroidPitLicenseCheckError.
Numaralandırma de.androidpit.AndroidPitLicenseCheckCode olarak yeniden adlandırıldı.
Base64-String e bağlı nasıl bir PublicKey öğesi oluşturabilirim?
Fark ettiğiniz üzere size Base64 olarak kodlanmış bir public key- genel anahtar sağlıyoruz. İhtiyaç duyduğunuz verinin imzasını kontrol etmek için bu dizeyi-string PublicKey nesnesine dönüştürmeniz gerekir. Aşağıda bunu nasıl yapacağınız gösterilmiştir.
/**
|
AndroidPIT Licensing Library
Eğer eski Android Market lisanslama kütüphanesini kullanıyorsanız (Package com.android.vending.licensing) AndroidPIT kütüphanesinin bu sürümünü kullanın:
AndroidPIT Licensing Library Version 1.3
Eğer yeni Google Play kütüphanesini kullanıyorsanız (Package com.google.android.vending.licensing) AndroidPIT kütüphanesinin bu sürümünü kullanın:
AndroidPIT Licensing Library Version 2.0
- Projem; çözülmemiş semboller gösteriyor ya da benim uygulamalarımı derleyemiyor.
- Lisans doğrulama kodunu nasıl yapılandırabilirim?
- Nasıl lisans sunucusundan bir mesaj alabilirsin?
- Nasıl ek olarak Andoid Piyasasındaki bir lisansı doğrulayabilirim?
- Lisans sunucusundan farklı hata mesajlarını nasıl test edebilirim?
- Uygulama Merkezi sonucunu ön belleğe almayı nasıl iptal edebilirim?
- Eğer bir kullanıcı Uygulama Merkezi'ne üye değilse ne olur?
- Lisans talebinin lisans sunucusuna ulaştığına nasıl emin olurum?
- Kendi lisans doğrulamamı kullanabilir miyim? İmza doğrulamasını kendim yapmak istiyorum.
- Projem numaralandırmayı bulamıyorde.androidpit.AndroidPitLicenseCheckError.
- Base64-String e bağlı nasıl bir PublicKey öğesi oluşturabilirim?