CodePush
Önemli
Visual Studio App Center 31 Mart 2025'te kullanımdan kaldırılıyor. Tamamen kullanımdan kaldırılana kadar Visual Studio App Center'ı kullanmaya devam edebilirsiniz ancak geçiş yapmayı düşünebileceğiniz birkaç önerilen alternatif vardır.
Destek zaman çizelgeleri ve alternatifleri hakkında daha fazla bilgi edinin.
CodePush, React Native geliştiricilerin mobil uygulama güncelleştirmelerini doğrudan kullanıcılarının cihazlarına dağıtmasını sağlayan bir App Center bulut hizmetidir. Geliştiricilerin belirli güncelleştirmeleri (örneğin, JS, HTML, CSS ve görüntü değişiklikleri) yayımlayabildiği merkezi bir depo olarak çalışır ve uygulamalar güncelleştirmeleri sorgulayabilir (sağlanan istemci SDK'larını kullanarak). Bu, hataları giderirken, ikili bir ikiliyi yeniden oluşturmanızı gerektirmeyen küçük özellikler eklerken veya bunu herhangi bir genel uygulama mağazası aracılığıyla yeniden dağıtırken son kullanıcılarınızla daha belirleyici ve doğrudan bir etkileşim modeline sahip olmanıza olanak tanır. App Center'da oluşturulan tüm React Native uygulamaları varsayılan olarak CodePush etkindir; CodePush kullanmaya başlamak için aşağıdaki adımlara ihtiyacınız vardır:
Not
Android cihazlarda CodePush yalnızca TLS 1.2 uyumlu cihazlarda çalışır
Not
CodePush API kullanımı, 5 dakikada bir 8 istek uygulandığında hız sınırlamasına sahiptir. Bunlar, aşağıdakilerin birleşimine göre sayılır: İstenen uç nokta, IP isteği kaynağı, dağıtım anahtarı ve istemci benzersiz kimliği. Sınıra ulaşılırsa, durum kodu 429 olan yanıt döndürülür:
{
"statusCode": 429,
"message": "Rate limit is exceeded. Try again in X seconds."
}
1. App Center CLI'sını yükleme
CodePush'un işlevlerinin çoğunu App Center CLI kullanarak yönetirsiniz. CLI'yı yüklemek için bir terminal penceresi veya komut istemi açın ve aşağıdaki komutu çalıştırın:
npm install -g appcenter-cli
Not
Bu komutu yürütürken bir EACCES
hata bulursanız sisteminizdeki npm izinlerini düzeltmeniz gerekebilir. Birçok site bu hatayı geçici olarak çözmek için komutunun kullanılmasını sudo
önerir, ancak kullanarak npm modüllerini sudo
hiçbir zaman yüklememelisiniz.
App Center CLI'sini başarıyla yükledikten sonra komutunu yürüterek appcenter login
CLI'yı App Center hesabınızın ayrıntıları için yapılandırın.
2. Uygulamanız CodePush-ify
Uygulamanıza CodePush istemci SDK'sını ekleyin ve App Center'daki dağıtımlarınızdan birinden uygulama güncelleştirmelerini çekecek şekilde yapılandırın. Aşağıdaki bölümlerde, desteklenen uygulama platformları için bunun nasıl yapılacağının ayrıntıları sağlanır:
3. Uygulama güncelleştirmesini yayınlama
Uygulamanızın kodunda veya varlıklarında değişiklik yaptıktan sonra, aşağıdaki bölümlerde açıklandığı gibi App Center CLI'yı kullanarak güncelleştirmeyi App Center'da yayımlayın.
React Native
Uygulamanızın kodunu ve varlık dosyalarını paketlemek için App Center CLI release-react
komutunu yürüterek bunları yeni bir sürüm olarak App Center sunucusunda yayımlayın. Örnek:
appcenter codepush release-react -a <ownerName>/MyApp
Cordova
Uygulamanızın kodunu ve varlık dosyalarını paketlemek için App Center CLI release-cordova
komutunu yürüterek bunları yeni bir sürüm olarak App Center sunucusunda yayımlayın. Örnek:
appcenter codepush release-cordova -a <ownerName>/MyApp
İpucu
App Center CLI'daki önemli bir özellik, kullanarak appcenter apps set-current <ownerName>/<appName>
bir uygulamayı geçerli uygulama olarak ayarlayabilme özelliğidir. Bir uygulamayı geçerli uygulama olarak ayarlayarak bayrağını -a
kullanmanız gerekmez. Örneğin, komut appcenter codepush deployment list -a <ownerName>/<appName>
geçerli uygulama ayarlanmış gibi appcenter codepush deployment list
yazılabilir. kullanarak appcenter apps get-current
hangi uygulamanın hesabınızın geçerli uygulaması olarak ayarlandığını kontrol edebilirsiniz. Bu komutu kullanmak, CLI komutlarının çoğunu kısaltır.
4. Uygulamanızı çalıştırma
Bu adımlar tamamlandıktan sonra, uygulamanızı çalıştıran tüm kullanıcılar 2. adımda yapılandırdığınız deneyimi kullanarak güncelleştirmeyi alır. Daha fazla bilgi için CLI ve istemci SDK belgelerine bakın (Apache Cordova, React Native).