2012-03-20 13 views

cevap

29

http://developer.android.com/guide/topics/manifest/manifest-element.html iki veya daha fazla uygulamalar arasında vb işler:

bu bunu nasıl kullanılacağı. =

paylaşılan:

LOCAL_CERTIFICATE, gibi AndroidManifest.xml

manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    android:sharedUserId="android.uid.shared" 
android:sharedUserLabel="@string/sharedUserLabel" 

tanımlandığı gibidir ve söz konusu uygulamanın, benzerleri için Android.mk ortak parametreyi olduğu

Size yardımcı olmasını umuyorum ..

+3

Android.mk'yi nasıl değiştirirsiniz? Bu dosyanın ne hakkında olduğunu bize bildiren herhangi bir referans görmedim ... –

+3

@IgorGanapolsky Android.mk Android NDK (C/C++) için bir makefile. Uygulamanız yalnızca Java kullanıyorsa, hesabınız yok. – Hartok

+3

Bu yanlış. Bu dosya, AOSP'nin bir parçası olarak oluşturulacak TÜM uygulamalar için gereklidir. Sadece java olanlar dahil. – RocketRandom

28

Varsayılan olarak, Android bir uygulamaya bir kullanıcı kimliği atar. Uygulamanız için benzersiz bir kimliktir ve bu kimliğe sahip kullanıcı dışındaki hiç kimsenin uygulamanızın kaynaklarına ulaşamayacağı anlamına gelir. Başka bir uygulamanın verilerine erişemez veya mevcut işleminizde çalıştıramazsınız. Bir etkinlikten başka bir uygulamanın aktivitesi ne zaman denir, android denilen yeni aktiviteyi kontrol eder ve tamamen farklı süreçlerde çalışırlar. Ancak, bildirim dosyasında, uygulamanız için bir kullanıcı kimliğini açıkça belirtebilirsiniz. Aynı kullanıcı kimliğini birden fazla uygulama için bildirdiğinizde, birbirlerinin kaynaklarına (veri alanları, görünümler, vb.) Ulaşabilirler. Başka bir uygulamadan verileri görüntüleyebilir veya işleminizde çalıştırabilirsiniz. , SharedUserId veri paylaşımı için kullanılan

<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
package="string" 
    android:sharedUserId="string" 
    android:sharedUserLabel="string resource" 
    android:versionCode="integer" 
    android:versionName="string" 
    android:installLocation=["auto" | "internalOnly" | "preferExternal"] > 
    . . .</manifest> 
+32

önemli bir addi Bu iki uygulama sadece aynı shareuserid ile kurabileceğinizden, uygulamaların her ikisi de aynı sertifika ile imzalanmıştır. – njzk2

+1

Bir cihazda kaç uygulama aynı sharedUserId'e sahip olabilir? Bir cihazda aynı userId ile beş uygulama yaşıyorsam, uygulama performansını aynı süreçte çalışırken etkiler mi? – pyus13

+1

@ pyus13 Aynı süreçte çalışmaya zorlandıklarına inanmıyorum. Bunu yapmak istiyorsanız sadece bir seçenek budur. –

İlgili konular