27 Mart 2025'ten itibaren AOSP'yi derlemek ve AOSP'ye katkıda bulunmak için aosp-main yerine android-latest-release kullanmanızı öneririz. Daha fazla bilgi için AOSP'de yapılan değişiklikler başlıklı makaleyi inceleyin.
Koleksiyonlar ile düzeninizi koruyun
İçeriği tercihlerinize göre kaydedin ve kategorilere ayırın.
AOSP, yapılandırma bilgilerini cihazda depolamak için aşağıdaki seçenekleri sunar:
Sistem özellikleri
Donanım soyutlama katmanı (HAL) özellikleri
Sistem yapılandırması XML dosyaları
Kaynak yer paylaşımları (statik ve çalışma zamanında)
Sistem özellikleri
Sistem özellikleri, build.propglobal dizininde depolanan dize anahtar/değer çiftleridir. Sistem özellikleri, kullanımı kolay ve performans yükü düşük olan sistem genelindeki kaynaklardır. Sistem özelliklerini kullanırken, bir sistem özelliği birden fazla işlem arasında paylaşılsa bile işlemler arası iletişimi (IPC) kullanmanız gerekmez. Ancak sistem özellikleri, genel değişkenlere benzer ve kötüye kullanıldığında zararlı olabilir. Sistem özelliklerinin kötüye kullanılması, güvenlik açıkları ve uygulamaların kullanıcılar tarafından erişilemez hale gelmesi gibi sorunlara neden olabilir. Yapılandırma bilgilerini depolamak için sistem özelliklerini kullanmadan önce diğer yapılandırma seçeneklerini değerlendirin.
Sistem özellikleri hakkında daha fazla bilgi için Sistem özellikleri ekleme başlıklı makaleyi inceleyin.
HAL mülkleri
Bir yapılandırma için doğru kaynak, cihazdaki bir donanım bileşeninden geldiğinde donanımın HAL'i söz konusu bileşenle ilgili bilgileri sağlamalıdır. Yapılandırmaya erişmek için mevcut HAL'de yeni bir HAL yöntemi tanımlayın. HAL geliştirme hakkında daha fazla bilgi için HAL'ler için AIDL başlıklı makaleyi inceleyin.
Sistem yapılandırması XML dosyaları
Yapılandırma verileri statik ancak karmaşıksa (yapılandırılmışsa) yapılandırma verileri için XML veya bu tür başka biçimler kullanabilirsiniz. Dosya şemasının sabit kalması XML dosyaları için şemayı sabit tutmak ve otomatik olarak oluşturulan bir XML ayrıştırıcıdan yararlanmak üzere xsd_config kullanabilirsiniz.
Kaynak yer paylaşımı
Bir ürünü özelleştirmek için kaynak yer paylaşımlarını kullanabilirsiniz. İki tür kaynak yer paylaşımı vardır:
Bir ürünü derleme sırasında özelleştirmek için kullanılan standart kaynak yer paylaşımı. Standart kaynak yer paylaşımları hakkında bilgi edinmek için Derlemeyi kaynak yer paylaşımlarıyla özelleştirme başlıklı makaleyi inceleyin.
Yazılım zamanında kaynak yer paylaşımı (RRO), hedef paketin kaynak değerlerini çalışma zamanında değiştirmek için kullanılır. Örneğin, sistem görüntüsüne yüklenen bir uygulama, davranışını bir kaynağın değerine göre değiştirebilir. Farklı bir bölüme yüklenen bir RRO, kaynak değerini derleme zamanında sabit kodlamak yerine uygulamanın kaynaklarının değerlerini çalışma zamanında değiştirebilir. RRO'lar hakkında daha fazla bilgi için Uygulamanın kaynaklarının değerini çalışma zamanında değiştirme başlıklı makaleyi inceleyin.
Bu sayfadaki içerik ve kod örnekleri, İçerik Lisansı sayfasında açıklanan lisanslara tabidir. Java ve OpenJDK, Oracle ve/veya satış ortaklarının tescilli ticari markasıdır.
Son güncelleme tarihi: 2025-07-27 UTC.
[[["Anlaması kolay","easyToUnderstand","thumb-up"],["Sorunumu çözdü","solvedMyProblem","thumb-up"],["Diğer","otherUp","thumb-up"]],[["İhtiyacım olan bilgiler yok","missingTheInformationINeed","thumb-down"],["Çok karmaşık / çok fazla adım var","tooComplicatedTooManySteps","thumb-down"],["Güncel değil","outOfDate","thumb-down"],["Çeviri sorunu","translationIssue","thumb-down"],["Örnek veya kod sorunu","samplesCodeIssue","thumb-down"],["Diğer","otherDown","thumb-down"]],["Son güncelleme tarihi: 2025-07-27 UTC."],[],[],null,["# Configuration overview\n\nAOSP offers the following options for storing configuration information on a\ndevice:\n\n- System properties\n- Hardware abstraction layer (HAL) properties\n- System config XML files\n- Resource overlays (static and runtime)\n\nSystem properties\n-----------------\n\n*System properties* are string key/value pairs stored in the `build.prop`\nglobal dictionary. System properties are system-wide resources that are easy to\nuse and have a low performance overhead. When using system properties, you don't\nneed to use interprocess communication (IPC) even if a system property is shared\nacross multiple processes. However, system properties are similar to global\nvariables and can be harmful when misused. The misuse of system properties can\nresult in issues such as security vulnerabilities and apps becoming inaccessible\nto users. Before using system properties to store configuration information,\nconsider the other configuration options.\n\nFor further information on system properties, see\n[Add system properties](/docs/core/architecture/configuration/add-system-properties)\n| **Note:** Previous to Android 10, AOSP used a ConfigStore HAL to store system properties. ConfigStore HAL is deprecated and should no longer be used. For information on the ConfigStore HAL, refer to [ConfigStore HAL](/docs/core/architecture/configuration/archive).\n\nHAL properties\n--------------\n\nWhen the source of truth for a configuration is from a hardware component on a\ndevice, the HAL for the hardware must provide the information for that\ncomponent. Define a new HAL method in the existing HAL for accessing the\nconfiguration. For further information on developing a HAL, see\n[AIDL for HALs](/docs/core/architecture/aidl/aidl-hals).\n| **Note:** Don't configure the HAL to use system properties as a side-channel communication mechanism for HALs.\n\nSystem config XML files\n-----------------------\n\nWhen the configuration data is static but complicated (structured), consider\nusing XML or other such formats for the configuration data. Ensure that the\nfile schema remains stable. For XML files, you can use\n[`xsd_config`](/docs/core/architecture/config-file-schema-api#config-build-rule)\nto keep the schema stable, and to take advantage of an autogenerated XML\nparser.\n\nResource overlay\n----------------\n\nYou can use resource overlays to customize a product. There are two types of\nresource overlays:\n\n- *Standard resource overlay* used to customize a product at build time. Foris\n information on standard resource overlays, see\n [Customizing the build with resource overlays](/docs/setup/create/new-device#use-resource-overlays).\n\n- *Runtime resource overlay (RRO)* is used to change the resource values\n of a target package at runtime. For example, an app installed on the system\n image might change its behavior based upon the value of a resource. Rather than\n hardcoding the resource value at build time, an RRO installed on a different\n partition can change the values of the app's resources at runtime. For more\n information on RROs, see\n [Change the value of an app's resources at runtime](/docs/core/runtime/rros)."]]