Xamarin.Android'i Sistem Uygulaması Olarak Yükleme

Bu kılavuzda bir sistem uygulaması ile kullanıcı uygulaması arasındaki farklar ve bir Xamarin.Android uygulamasının sistem uygulaması olarak nasıl yükleneceği açıklanır. Bu kılavuz, özel Android ROM görüntülerinin yazarları için geçerlidir. Özel ROM'un nasıl oluşturulacağını açıklamaz.

Sistem Uygulaması

Özel Android ROM görüntülerinin yazarları veya Android cihaz üreticileri, BIR ROM veya cihaz dağıtırken bir Xamarin.Android uygulamasını sistem uygulaması olarak eklemek isteyebilir. Sistem uygulaması, cihazın çalışması için önemli olarak kabul edilen veya özel ROM yazarının her zaman kullanılabilir olmasını istediği işlevselliği sağlayan bir uygulamadır.

Sistem uygulamaları /system/app/ klasörüne (dosya sistemindeki salt okunur bir dizin) yüklenir ve kullanıcı kök erişimine sahip olmadığı sürece kullanıcı tarafından silinemez veya taşınamaz. Buna karşılık, kullanıcı tarafından yüklenen bir uygulama (genellikle Google Play'den veya uygulamayı dışarıdan yükleyerek) kullanıcı uygulaması olarak bilinir. Kullanıcı uygulamaları kullanıcı tarafından silinebilir ve çoğu durumda cihazda farklı bir konuma taşınabilir (örneğin, bir tür dış depolama alanı).

Sistem uygulamaları tam olarak kullanıcı uygulamaları gibi davranır, ancak aşağıdaki önemli özel durumlara sahiptir:

  • Sistem uygulamaları normal bir kullanıcı uygulaması gibi yükseltilebilir. Ancak, uygulamanın bir kopyası /system/app/ içinde her zaman mevcut olduğundan, uygulamayı özgün sürüme geri almak her zaman mümkündür.

  • Sistem uygulamalarına, bir kullanıcı uygulamasında kullanılamayan belirli yalnızca sistem izinleri verilebilir. Yalnızca sistem iznine BLUETOOTH_PRIVILEGEDörnek olarak, uygulamaların herhangi bir kullanıcı etkileşimi olmadan Bluetooth cihazlarıyla eşleşmesine olanak tanır.

Bir Xamarin.Android uygulamasını sistem uygulaması olarak dağıtmak mümkündür. Özel ROM'a bir APK sağlamaya ek olarak, APK'dan ROM görüntüsünün filesytem'ine el ile kopyalanması gereken libmonodroid.so ve libmonosgen-2.0.so iki paylaşılan kitaplık vardır. Bu kılavuzda ilgili adımlar açıklanacaktır.

Kısıtlamalar

Bu kılavuz, özel Android ROM görüntülerinin yazarları için geçerlidir. Özel ROM'un nasıl oluşturulacağını açıklamaz.

Bu kılavuzda, Xamarin.Android için yayın APK'sini paketleme ve Android uygulamaları için CPU Mimarileri hakkında bilgi sahibi olduğunuz varsayılır.

Xamarin.Android Uygulamasını Sistem Uygulaması Olarak Yükleme

Aşağıdaki adımlarda bir Xamarin.Android uygulamasının sistem uygulaması olarak nasıl yükleneceği açıklanmaktadır.

  1. Xamarin.Android uygulamasının yayın APK'sını paketleme – Bu, Uygulama Yayımlama kılavuzu tarafından daha ayrıntılı olarak açıklanmıştır.

  2. APK'dan paylaşılan kitaplıkları ayıkla – Herhangi bir ZIP yardımcı programı kullanarak APK dosyasını açın ve /lib/ klasörünün içeriğini inceleyin. Bu klasör, uygulama tarafından desteklenen her uygulama ikili arabirimi (ABI) için bir alt dizine sahip olur; bu klasörün içeriği söz konusu ABI'de uygulamanın gerektirdiği tüm paylaşılan kitaplıkları içerir:

    Screenshot of .so files in the armeabi-v7a folder of taskypro.zip

    Önceki ekran görüntüsünde, uygulamanın gerektirdiği iki .so dosyasını tutan yalnızca bir desteklenen ABI (armeabi-v7a) vardır. Yalnızca cihaz veya cihaz ROM'unun hedef mimarisi için uygun ABI dosyalarını ayıklamanın gerekli olduğunu unutmayın; örneğin, .so dosyaları x86 klasöründen armeabi-v7acihazına veya ROM'a kopyalamayın.

  3. .so dosyalarını /system/lib dosyasına kopyala – Önceki adımda APK'dan ayıklanan .so dosyalarını özel ROM'daki /system/lib/ klasörüne kopyalayın.

  4. APK dosyasını /system/app dosyasına kopyalayın – Son adım APK dosyasını ROM'da /system/app klasörüne kopyalamaktır.

Özet

Bu kılavuzda sistem uygulaması ile kullanıcı uygulaması arasındaki fark ele alınıp Xamarin.Android uygulamasının sistem uygulaması olarak nasıl yükleneceği açıklanmıştır.