Uç
Bu repo, şimdilik benzersiz yerel Android uygulamasına sahiptir. Beta. Eski .NET MAUI uygulamaları için tedarik mi yapıyorsunuz? Şuraya gidin: bitwarden/mobil
- Minimum SDK: 29
- Amaç SDK'sı: 34
- Desteklenen Cihaz Çeşitleri: Cep telefonu ve Tablet
- Desteklenen Yönler: Portre ve Panorama
Depoyu klonlayın:
$ git clone github.com/bitwarden/android
Bir içerir
user.properties
görevin temel dizinindeki dosyayı açın ve sonraki özellikleri ekleyin:gitHubToken
: Token'a (PAT) “geleneksel” bir Github Halka Açık Olmayan Getirme girişiread:packages
kapsam (ör.:gitHubToken=gph_xx...xx
). Bunlar şuraya giderek oluşturulacaktır: Github belirteçleri web sayfası. Gözden geçirmek kimlik doğrulamaya değinen Github Paketleri bireysel belgeleri ek küçük baskı için.localSdk
: SDK'nın yerel maven yapıtından yüklenmesi gerekip gerekmediğini çözmek için bir boole maliyeti (ör.:localSdk=true
). Benzersiz SDK yeteneklerini geliştirirken bu çok değerlidir. Gözden geçirmek SDK'yı alıcılara bağlama ek küçük baskı için.
Code vogue formatlayıcıyı kurun:
Tüm kodlar bölümünde açıklanan işaretçileri uygulamalıdır. Kod Türü Yönergeleri belgesi. Bu fikirlere bağlı kalmayı azaltmak için, tüm katkıda bulunanların şu konulara bir göz atması gerekir:
docs/bitwarden-style.xml
onların kod moda cihazı olarak. IntelliJ / Android Studio'da:- Şuraya git:
Preferences > Editor > Code Style
. - Vur
Manage
yanındaki düğmeScheme
. - Seçme
Import
. - Getir
bitwarden-style.xml
misyonun dosyasındaki dosyadocs/
dizin. - “Kimden”i içe aktar
BitwardenStyle
“ile”BitwardenStyle
. - Vurmak
Apply
VeOK
Ayarlamaları bir kenara bırakıp Tercihler'den çıkmak için.
Bazı durumlarda, soygun planındaki ayarlamalar için Android Studio'yu yeniden başlatmak zorunda kalabileceğinizi gösterin.
Arama kayıt verilerini göndermeden önce tüm kodun biçimlendirilmesi gerekir. Bu da manuel olarak gerçekleştirilir, ancak kaydetme sırasında otomatik formata bağlanan özel bir klavyeye sahip bir makro oluşturmak da anlamlı olacaktır. OS X'teki Android Studio'da:
- Seçme
Edit > Macros > Start Macro Recording
- Seçme
Code > Optimize Imports
- Seçme
Code > Reformat Code
- Seçme
File > Save All
- Seçme
Edit > Macros > Stop Macro Recording
Bu daha sonra şuraya giderek bir tuş alanına eşlenebilir:
Android Studio > Preferences
ve aşağıdaki makroyu düzenliyorumKeymap
(örnek: kaydırma + tekrarlama + s).Lütfen aynı işleme/PR'de biçimlendirme ve mantıksal ayarlamaları karıştırmaktan çok uzak durun. Büyük olasılıkla, aynı kodda mantıksal ayarlamalar yapmak için herhangi bir büyük biçimlendirme sorununu ayrı bir PR'de açmadan önce düzeltin. Bu, başkalarının kodu incelerken birçok kod ayarlamasına odaklanmasına yardımcı olur.
- Şuraya git:
Bir sonraki adım, köklü Android SDK'dan önceki yardımcı programın aşaması olarak entegre edilen tüm üçüncü kutlama bağımlılıklarının bir envanteridir.
AndroidX Uygulama Uyumluluğu
- https://developer.android.com/jetpack/androidx/releases/appcompat
- Çalıştır: Eski API varyasyonlarındaki benzersiz API'lere erişim sağlar.
- Lisans: Apache 2.0
AndroidX Otomatik Doldurma
- https://developer.android.com/jetpack/androidx/releases/autofill
- Çalıştır: Satır içi otomatik doldurma kullanıcı arayüzü oluşturmak için araçlara erişim sağlar.
- Lisans: Apache 2.0
AndroidX Biyometri
- https://developer.android.com/jetpack/androidx/releases/biometric
- Çalıştır: Biyometri veya cihaz kimlik bilgileriyle kimlik doğrulaması yapın.
- Lisans: Apache 2.0
AndroidX Tarayıcı
- https://developer.android.com/jetpack/androidx/releases/browser
- Çalıştır: Web sayfalarını kişinin varsayılan tarayıcısıyla görüntüler.
- Lisans: Apache 2.0
AndroidX KameraX Kamera2
- https://developer.android.com/jetpack/androidx/releases/digicam
- Çalıştır: Barkod tarama için fotoğrafları gösterin ve yakalayın.
- Lisans: Apache 2.0
AndroidX Üretmek
- https://developer.android.com/jetpack/androidx/releases/plot
- Çalıştır: Kotlin tabanlı, çoğunlukla tamamen bildirimsel bir kullanıcı arayüzü çerçevesi.
- Lisans: Apache 2.0
AndroidX Core Açılış Ekranı
- https://developer.android.com/jetpack/androidx/releases/core
- Çalıştırma: Geriye doğru uygun SplashScreen API uygulaması.
- Lisans: Apache 2.0
AndroidX Kimlik Bilgileri
- https://developer.android.com/jetpack/androidx/releases/credentials
- Çalıştır: Bireyin kimlik bilgilerine birleşik erişim.
- Lisans: Apache 2.0
AndroidX Yaşam Döngüsü
- https://developer.android.com/jetpack/androidx/releases/lifecycle
- Çalıştırma: Yaşam döngüsüne duyarlı bileşenler ve aletler.
- Lisans: Apache 2.0
AndroidX Odası
- https://developer.android.com/jetpack/androidx/releases/room
- Çalıştır: Android için uygun, SQLite tabanlı, çoğunlukla tamamen kalıcı bir katman.
- Lisans: Apache 2.0
AndroidX Güvenliği
- https://developer.android.com/jetpack/androidx/releases/safety
- Çalıştırın: Anahtarları güvenli bir şekilde yönetin ve kayıt verilerini ve paylaşılan tercihleri şifreleyin.
- Lisans: Apache 2.0
AndroidX Çalışma Yöneticisi
- https://developer.android.com/jetpack/androidx/releases/work
- Çalıştırma: WorkManager, güvenilir bir şekilde kereste olarak kullanılan ertelenebilir, asenkron görevlerin gündeminden önce gelir.
- Lisans: Apache 2.0
Hançer Kabzası
- https://github.com/google/dagger
- Çalıştır: Bağımlılık enjeksiyon çerçevesi.
- Lisans: Apache 2.0
Firebase Bulut Mesajlaşma
- https://github.com/firebase/firebase-android-sdk
- Çalıştır: Anlık bildirimin bir cihaza son vermesini etkinleştirir. (NOT: Bu bağımlılık artık F-Droid aracılığıyla dağıtılan yapılara entegre değildir.)
- Lisans: Apache 2.0
Firebase Crashlytics
- https://github.com/firebase/firebase-android-sdk
- Çalıştır: Atomize ve ölümcül olmayan hata raporlama için SDK. (NOT: Bu bağımlılık artık F-Droid aracılığıyla dağıtılan yapılara entegre değildir.)
- Lisans: Apache 2.0
Vurgulu
- https://github.com/bumptech/cruise
- Çalıştırma: Görüntü yükleme ve önbelleğe alma.
- Lisans: BSD, faz MIT ve Apache 2.0
kotlinx.collections.immutable
- https://github.com/Kotlin/kotlinx.collections.immutable
- Çalıştır: Kotlin için değişmez seri arayüzler ve uygulama prototipleri.
- Lisans: Apache 2.0
kotlinx.coroutines
- https://github.com/Kotlin/kotlinx.coroutines
- Çalıştırma: Kotlin, eş zamanlı olmayan ve reaktif kod için ortak rutinler kitaplığıdır.
- Lisans: Apache 2.0
kotlinx.serileştirme
- https://github.com/Kotlin/kotlinx.serialization/
- Çalıştır: Kotlin için JSON serileştirme kitaplığı.
- Lisans: Apache 2.0
kotlinx.serileştirme dönüştürücüsü
- https://github.com/sq./retrofit/tree/trunk/retrofit-converters/kotlinx-serialization
- Çalıştır: Retrofit 2 ve kotlinx.serialization için dönüştürücü.
- Lisans: Apache 2.0
TamamHttp 3
- https://github.com/sq./okhttp
- Operate: Ziyaretçileri engellemek ve günlüğe kaydetmek için kütüphane tarafından kullanılan bir HTTP istemcisi.
- Lisans: Apache 2.0
Güçlendirme 2
- https://github.com/sq./retrofit
- Çalıştır: Bir ağ katmanı arayüzü.
- Lisans: Apache 2.0
zxcvbn4j
- https://github.com/nulab/zxcvbn4j
- Çalıştır: Şifre gücü tahmini.
- Lisans: MİT
ZXing
- https://github.com/zxing/zxing
- Çalıştır: Barkod tarama ve oluşturma.
- Lisans: Apache 2.0
Bir sonraki, yerel model atmosferinin aşaması olarak önceki ek üçüncü kutlama bağımlılıklarının bir envanteridir. Bu, kod kalitesi ve astarlamayla bağlantılı araçlara önyükleme yapmak için test bağlantılı yapıtları içerir. Bunlar artık kalan paket hizmet programında yeni değil.
tespit
- https://github.com/detekt/detekt
- Operate: Kotlin programlama dili için statik bir kod analiz aracı.
- Lisans: Apache 2.0
JÜnite 5
- https://github.com/junit-workforce/junit5
- Çalıştır: Birim Yardımcı program kodunu test etmek için çerçeve deneniyor.
- Lisans: Eclipse Kamu Lisansı 2.0
SahteK
- https://github.com/mockk/mockk
- Çalıştır: Kotlin-hoş alaycı kütüphane.
- Lisans: Apache 2.0
Roboelektrik
- https://github.com/robolectric/robolectric
- Çalıştır: Android çerçevesinde anında sayılan kod için bir birim test çerçevesi.
- Lisans: MİT
Türbin
- https://github.com/cashapp/turbine
- Çalıştır: Kotlinx.coroutine'in Waft'ı için küçük bir test kütüphanesi.
- Lisans: Apache 2.0
Sonraki, CI/CD iş akışlarının aşaması olarak önceki ek üçüncü kutlama bağımlılıklarının bir envanteridir. Bunlar artık kalan paket hizmet programında yeni değil.
Hızlı şerit
- https://fastlane.instruments/
- Çalıştır: Uygulamaları oluşturmayı, imzalamayı ve dağıtmayı otomatikleştirir.
- Lisans: MİT
Kover
- https://github.com/Kotlin/kotlinx-kover
- Çalıştır: Kotlin kod kapsamı araç seti.
- Lisans: Apache 2.0