Uygulama kaynakları ekleme

Bit eşlemler ve düzenler gibi uygulama kaynakları, türe göre düzenlenir. dizinleri oluşturun.res/ İsterseniz farklı cihazlar için optimize edilmiş farklı versiyonları bir bit eşlemin yüksek çözünürlüklü sürümü gibi yapılandırma ekranları.

Android Studio, birçok çeşitli şekillerde uyarlayabilirsiniz. Bu sayfada, temel kaynak dosyaları eklemeyi, kaynaklarınızın konumunu değiştirmeyi ve nasıl işlediğini tartıştık.

Aşağıdaki sayfalara göz atarak Belirli kaynak türleri:

Uygulamanızdaki kaynaklara nasıl başvuracağınız hakkında bilgi bkz. Uygulama kaynaklarına genel bakış.

XML kaynak dosyası ekleme

Önceki sayfa bağlantılarında, her biri için özelleştirilen iş akışları açıklansa da, aşağıdaki adımları izleyerek herhangi bir XML kaynak dosyasını ekleyebilirsiniz: için şu adımları izleyin:

  1. Aşağıdaki iki panelden birinde Proje penceresindeki hedef uygulama modülünü tıklayın: Android veya Proje görünümüne gidin.

  2. Dosya > Yeni > Android kaynak dosyası.

    Şekil 1. New Resource File (Yeni Kaynak Dosyası) iletişim kutusu.

  3. İletişim kutusundaki ayrıntıları girin:
    • Dosya adı: XML dosyasının adını girin (bu, .xml son eki).
    • Kaynak türü: Oluşturmak istediğiniz kaynağın türünü seçin.
    • Kök öğe: Varsa şunun için kök XML öğesini seçin: dosyası olarak kaydedebilirsiniz. Bazı kaynak türleri yalnızca bir kök öğe türünü destekler. Şuna bağlı olarak: seçeneğini işaretlerseniz bu ayar düzenlenemez.
    • Kaynak grubu: Dosyayı kaydetmek istediğiniz kaynak grubunu seçin.
    • Dizin adı: Dizin belirli bir şekilde adlandırılmalıdır. yapılandırma niteleyicilerine bakalım. Şu kural geçerli olmadığı sürece bunu düzenlemeyin: yapılandırma niteleyicileri eklemek dizin adını manuel olarak da girebilirsiniz (bunun yerine Kullanılabilir niteleyicileri kullanın).
    • Kullanılabilir niteleyiciler: Yapılandırma niteleyicileri manuel olarak eklemek yerine dizin adınızdan bir niteleyici seçerek bunları ekleyebilirsiniz. listelenip Ekle düğmesini tıklayın.
  4. İstediğiniz tüm niteleyicileri ekledikten sonra Tamam'ı tıklayın.

İpucu: Yeni Kaynak Dosyası iletişim kutusunun basitleştirilmiş bir sürümünü açmak için eklemek istediğiniz kaynak türüne özel bir kampanya oluşturmak istiyorsanız res klasöründeki kaynak dizinini seçin ve Yeni > type-name kaynak dosyası.

Karmaşık XML kaynaklarını satır içi yapın

Bazı karmaşık kaynaklar, birden fazla XML kaynak dosyası gerektirir. Örneğin, animasyonlu çekilebilir vektörün, bir vektör nesnesi ve bir animasyon nesnesi var ve en az üç XML dosyası gerektirir.

Bu örnekte, gerekir. Ancak XML dosyaları yalnızca bu animasyonlu çekilebilir vektör için kullanılırsa bunun yerine Android Öğesinde sağlanan satır içi kaynak biçimini kullanabilirsiniz Paketleme Aracı (AAPT). AAPT ile üç kaynağı tek XML'de tanımlayabilirsiniz. dosyası olarak kaydedebilirsiniz. Daha fazla bilgi için bkz. Satır içi karmaşık XML kaynaklar bölümüne göz atın.

Kaynak dizini ekleyin

Yeni bir kaynak dizini eklemek için şu adımları uygulayın:

  1. Proje penceresinde hedef uygulama modülünü tıklayın.

  2. Dosya > Yeni > Android kaynak dizini.

    Şekil 2. Yeni Kaynak Dizini iletişim kutusu.

  3. İletişim kutusuna ayrıntıları girin:
    • Dizin adı: Dizin belirli bir şekilde adlandırılmalıdır. yapılandırma niteleyicilerin kaynak türüne ve kombinasyonuna Şunları Yapmayın: İsterseniz dizin adını manuel olarak da girebilirsiniz (bunun yerine Kullanılabilir niteleyicileri kullanın).
    • Kaynak türü: Dizinde yer almasını istediğiniz kaynağın türünü seçin.
    • Kaynak kümesi: Dizinin yerleştirilmesini istediğiniz kaynak kümesini seçin.
    • Kullanılabilir niteleyiciler: Yapılandırma niteleyicileri manuel olarak eklemek yerine dizin adınızdan bir niteleyici seçerek bunları ekleyebilirsiniz. listelenip Ekle düğmesini tıklayın.
  4. İstediğiniz tüm niteleyicileri ekledikten sonra Tamam'ı tıklayın.

Kaynak dizininizi değiştirin

Kaynaklarınız varsayılan olarak şurada bulunur: module-name/src/source-set-name/res/ Örneğin, modülünüzün ana kaynak grubunun kaynakları src/main/res/, ve hata ayıklama kaynağı grubu kaynakları src/debug/res/ konumunda.

Ancak, bu yolları istediğiniz res.srcDirs özelliği ile konum (build.gradle dosyasına göre) ve sourceSets blokunda. Örnek:

Eski

android {
    sourceSets {
        main {
            res.srcDirs = ['resources/main']
        }
        debug {
            res.srcDirs = ['resources/debug']
        }
    }
}

Kotlin

android {
    sourceSets {
        getByName("main") {
            res.srcDirs("resources/main")
        }
        getByName("debug") {
            res.srcDirs("resources/debug")
        }
    }
}

Ayrıca, bir kaynak kümesi için birden çok kaynak dizini belirtebilir ve daha sonra bunları bir araya getirir. Örnek:

Eski

android {
    sourceSets {
        main {
            res.srcDirs = ['res1', 'res2']
        }
    }
}

Kotlin

android {
    sourceSets {
        main {
            res.srcDirs("res1", "res2")
        }
    }
}

Daha fazla bilgi için kaynak grupları için geçerlidir.

Kaynak birleştirme

Uygulama nihai dosyanızdaki kaynaklar üç kaynaktan gelebilir:

  • Ana kaynak grubu (genellikle src/main/res/ konumunda bulunur)
  • Varyant oluşturma kaynak kümeleri
  • Android kitaplıkları (AAR'lar)

Her bir kaynak kümesindeki veya kitaplıktaki tüm kaynaklar benzersiz olduğunda eklenir. Bir kaynak, dosya adı aşağıdaki gibiyse benzersiz olarak kabul edilir: hem benzersiz hem de kaynak türü dizini ve kaynak niteleyici (tanımlanmışsa).

Aynı kaynağın iki veya daha fazla eşleşen sürümü varsa bu durumda nihai uygulamaya yalnızca bir sürüm eklenir. Derleme araçları seçimi aşağıdaki öncelik sırasına göre (en yüksek öncelikli solda):

derleme varyantı > derleme türü > ürün aroması > ana kaynak kümesi > kitaplık bağımlılıkları
'nı inceleyin.

Örneğin, ana kaynak kümesi şunları içeriyorsa:

  • res/layout/example.xml
  • res/layout-land/example.xml

Hata ayıklama derleme türü de şunları içerir:

  • res/layout/example.xml

Ardından son uygulama, hata ayıklama derleme türünden res/layout/example.xml içerir ve Ana kaynak grubundan res/layout-land/example.xml.

Ancak, derleme yapılandırmanız birden fazla kaynak klasörü ve bu kaynaklar arasında çakışmalar varsa bir hata ve her kaynak dizini aynı dizinde olduğundan birleştirme başarısız olur. öncelik sırasına koyabilirsiniz.