Play Store'daki uygulamaların yalnızca takılıyken otomatik olarak güncellenmesine nasıl izin verilir?


14

Telefonum takılı olduğunda (şarj oluyor) ve kablosuz bağlantıdayken uygulamaların otomatik olarak güncellenmesini istiyorum. Otomatik güncellemeye yalnızca kablosuz bağlantı açıkken Play Store ayarlarında uygun seçenekle kolayca izin verebilirim, ancak telefonun pille çalışıyorsa otomatik güncellemelerin gerçekleşmesini engellemem.

Bu, telefonumu evde wifi üzerinde kullanırken gereksiz bir pil tüketimine neden oluyor. Otomatik güncelleme uygulamalarının zaman açısından kritik bir görevden çok bir arka plan işi olduğu göz önüne alındığında, bunun standart bir güç tasarrufu stratejisi olmadığına inanamıyorum.

Bunu başarmak için herhangi bir uygulama veya sistem geçici çözümü (cihazın köklü olup olmadığı dahil) biliyor musunuz?

Yanıtlar:


4

Not :

Aşağıdaki çözüm:

  • Android 4.2.1, COS12 (Android 5.0.2) ve CM12.1 (Android 5.1.1) üzerinde test edilir - hepsi Play Store v6.0.5 çalıştıran 1
  • rootlanmış bir Android gerektirir
  • İşte çözümün kısa bir demosu

Play Store manifestine göz atarken, yalnızca aşağıdaki hizmetin muhtemelen uygulamaların Wi-Fi üzerinden otomatik olarak güncellenmesinin başlatıcısı olduğunu eğitimli bir şekilde tahmin ettim.

com.google.android.finsky.autoupdate.ReschedulerUsingAlarmManager$CheckWifiAndAutoUpdate

Bu hizmetle farklı cihazlarda birkaç koşulda oynadım ve söz konusu hedef için yararlı buldum. Google Play Store'da uygulamaların otomatik güncelleme ayarının "Uygulamaları yalnızca Kablosuz üzerinden otomatik güncelleme" olarak ayarlanması gerektiğini söylemeye gerek yok.

Yapabilecekleriniz: Güç kaynağı ve Wi-Fi bağlandığında ve daha sonra bağlantısı kesildiğinde bir dizi eylemi yürütebilecek bir uygulaması yükleyin . Ben kullanılan Tasker ( deneme sürümünü ; klavuzu otomasyon uygulaması gibi).

İki göreve ihtiyacımız olurdu: bir giriş görevi ve bir çıkış görevi. İlgili yardım için cevabımı burada görebilirsiniz .

  • Görevi girin : (Eylemler):

    1. Kod → Kabuğu Çalıştır

      • Komut:

        pm enable com.android.vending / com.google.android.finsky.autoupdate.ReschedulerUsingAlarmManager \ $ CheckWifiAndAutoUpdate;
        am-stop com.android.vending duyuyorum;
        am startservice com.android.vending / com.google.android.finsky.autoupdate.ReschedulerUsingAlarmManager \ $ CheckWifiAndAutoUpdate
        
      • kene Kök Kullan
    2. İsteğe bağlı olarak, güncelleme yordamının başladığını bildirmek için bir veya daha fazla eylem ekleyebilirsiniz. Bir tostla kendimi haberdar etmek için Alert → Flash kullandım.
  • Görevden çık : (İşlemler):

    Bu görev için Busybox uygulamalarının yüklü olması gerekir. Android cihazına eksik komut satırı araçlarını nasıl yükleyebilirim? Konusuna bakın. ilgili yardım için.

    1. Net → Test Ağı

      • Tür: Mobil Veri Etkin
      • Mağaza Sonucu: %Mdata
    2. Kod → Kabuğu Çalıştır

      • Komut:

        svc veri devre dışı bırakma;
        svc wifi devre dışı bırakma;
        am-stop com.android.vending duyuyorum;
        am-stop com.android.providers.downloads duyuyorum;
        down_path = $ (içerik sorgusu - içerik: // Downloads / my_downloads --projection _data --where "bildirimpackage = 'com.android.vending'");
        [["$ down_path"! = "Sonuç bulunamadı." ]] && echo $ down_path | sed 's /.*=// g' | xargs rm -f || yankı devam ediyor;
        içerik silme - içerik: // Downloads / my_downloads --where "bildirimpackage = 'com.android.vending'"
        pm, com.android.vending / com.google.android.finsky.autoupdate.ReschedulerUsingAlarmManager \ $ CheckWifiAndAutoUpdate;
        svc wifi etkinleştirmek;
        [["% Mdata" == "evet"]] && svc verileri etkinleştir || yankı hiçbir şey yapmıyor;
        
      • kene Kök Kullan
    3. Yine, kendinizi bilgilendirmek için, istediğiniz herhangi bir eylemi kullanın.

Bu görevler ne yapar?

Her iki bağlam için de koşullar sağlandığında, enter görevi çalıştırılır. Bu görevdeki komutlar bunları sırayla yapar:

  • yukarıda belirtilen Play Store hizmetini etkinleştirin
  • force-stop Play Mağazası
  • bahsedilen Play Store hizmetini başlat

Otomatik güncellemenin başlaması için hepsi bu.

Etkinleştirildikten sonra, profil devre dışı bırakıldığında (yalnızca bir bağlamın koşulu artık karşılanmadığı için) çıkış görevi çalışır. Bu çıkış görevi aşağıdaki adımları sırayla yürütür:

  • mobil verilerin durumunu (etkin / devre dışı) değişken bir Mdata'da depolamak
  • bu komutların işi:

    • mobil verileri devre dışı bırak
    • Kablosuz bağlantıyı devre dışı bırak
    • force-stop Play Mağazası
    • zorla indirme yöneticisi

    Wi-Fi'nin kullanılamaması nedeniyle bir uygulama için bir güncelleme (indirme devam ediyor) kesilirse, ilerleme çubuğunun (bildirim) reddedildiğini, ilerleme durumunun veritabanı indirmelerinin tablo indirmelerinde bir satırda saklandığını fark ettim. .db . (Bu veritabanı Download Manager veri dizininin altında bulunur.) Bu satır, kısmen indirilen dosyanın konumunu da içerir.

    Bir sonraki başarılı Wi-Fi bağlantısında otomatik güncellemenin gerçekleşmediğinden emin olmak ve profil enter görevini çalıştırmıyorken hiçbir zaman bunu yapmadığından emin olmak için, komutların geri kalanı aşağıdakileri yapar:

    • kısmen indirilen dosyanın konumunu _datacom.android.vending tarafından bildirim paketi olarak tanımlanan bir satıra karşılık gelen sütundaki değerden çıkarın . Bu dosyayı silmeyi amaçlıyoruz. Bu küçük bir fedakarlıktır.
    • gerçekten de _data altında bir dosya yolu varsa , onu işaret eden dosyayı silmek için kullanın.
    • bu satırı silerseniz, aksi takdirde ağ bağlantısı değiştiğinde (yeniden bir Wi-Fi'ye bağlandığında) İndirme Yöneticisi tarafından okunur ve otomatik güncelleme yeniden başlar.
    • yukarıda belirtilen Play Store hizmetini devre dışı bırakın, böylece otomatik güncelleme hiçbir zaman kendi başına başlamaz
    • Kablosuz'u etkinleştir
    • bu görevi çalıştırmadan önce etkinleştirildiyse mobil verileri etkinleştirin.

1 Bu cevabın ilk revizyonunu oluştururken mevcut Play Store sürümü kesinlikle 6.0.5 değil ama üstü. Ancak, hiçbir cihazım şu ana kadar başka Play Store güncellemesi almadı.


Senaryo benim için çalışmıyor yani küçük bir sorun giderme adımı olarak, "içerik sorgusu" komutunu manuel olarak çalıştırdım ve gerçekten "Sonuç bulunamadı" dizesiyle sonuçlandığını fark ettim, böylece bir sonraki satır "içerik silme" EĞER koşulu doğru değil.
prl77

2

En yakın geldiğimde iki ayar birleştiriliyor. Bunu, Android 4.4.4 (KitKat) ve diğeri Android 5.0.2 (Lollipop) çalıştıran iki cihazda yapıyorum.

  • Sistem Ayarları → Wi-Fi → Gelişmiş → Uyku modunda Wi-Fi'yi açık tut → Yalnızca takılıyken
  • Google Play Store → Ayarlar → Uygulamaları otomatik güncelle → Uygulamaları yalnızca Kablosuz üzerinden otomatik güncelle

Takıldığında güncellemeleri en azından biraz daha sık alıyor gibi görünüyor. Mükemmel değil, ama kötü bir yarım çözüm değil ve Tasker veya köklendirme gerektirmiyor.


0

Bu Tasker (Ücretli Uygulama) kullanılarak gerçekleştirilebilir. Tasker'da, Profil aşağıdaki koşullara sahip olarak tanımlanabilir. Çok az öğrenme eğrisi var, ancak bu uygulama neredeyse birçok uygulamanın yerini alabilir.

Aşağıda örnek profil,

Ne zaman Pil>% X Ve Wifi AÇIK ve Şarj etkindir

Otomatik Senkronizasyonu Etkinleştir

Bu sadece örnek olanı, koşulu ihtiyacınıza göre belirtebilirsiniz. Bu ayrı bir konu olduğundan, xda forumlarında google tasker'ı teşvik etmenizi öneririm.


3
Bu, tüm veriler için tüm otomatik senkronizasyonu etkinleştirmez / devre dışı bırakmaz mı? Play Store'un otomatik olarak güncellenmemesi için diğer tüm hizmetleri manuel olarak yenilemeniz ideal değildir.
Bay Buster

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.