“ShareIt”, “Xender” vb., APK'yı “bilinmeyen kaynak” izni gerektirmeden nasıl yükleyebilir?


9

Normalde, bir apk (SD karttan söyleyin) yüklemem gerekirse, telefonumun ayarlarında "Bilinmeyen Kaynaklar" ı etkinleştirmem gerekir. Ancak "ShareIt" kullanarak başka bir telefondan herhangi bir APK aktarıp yüklediğimde, telefonum için böyle bir izin gerekmez.

ShareIt bu izni nasıl atlayabilir?


Cihazınıza önceden yüklenmiş olarak mı geldi, yoksa kendiniz mi kurdunuz?
Izzy

Yanıtlar:


8

Biraz kazma yaptım ve API 21'den itibaren Sistem izinleri olmadan https://developer.android.com/reference/android/content/pm/PackageInstaller.html .

Aslında, Google tarafından nasıl yapılacağını gösteren bir kod örneği vardır. https://github.com/googlesamples/android-testdpc/blob/master/app/src/main/java/com/afwsamples/testdpc/cosu/CosuUtils.java


Şimdi uygulamayı gerçekten kullanıp kullanmadığını bulmak için, bu kazma için Kudos ...
Andy Yan

2
@beeshyams - Pek değil. Uygulama "sessiz" bir yükleme yapamaz. Bekleyen amaç aracılığıyla, kullanıcının kurulum sırasında açık "tıklama" değeri gerekir.
Neo

1
@Neo Lanet, bu yüzden cevabımı yazdığımda sessiz bir kurulum aldım ... Kötü.
Andy Yan

2
Diğer yandan, ShareIt'ın paketi bir şekilde gizlenmiş gibi görünüyor, bu yüzden araçlarım Java kodu oluşturmada başarılı olsa da, saplamalardan önemli bir şey görülemiyor.
Andy Yan

Bekle - Başka bir araç kullandım ve sanırım alabilirim. Doğrulamadan sonra cevabınızı düzenleyeceğim.
Andy Yan

4

Uygulamalar sessiz bir şekilde kurulursa (normal kurulum iletişim kutusu olmadan), muhtemelen bu uygulamalar doğrudan çağırır pm, yani PackageManagerbir sistem uygulaması olarak izin alır android.permission.INSTALL_PACKAGES.

Uygulamanın pmbir kök bağlamda arayabilmesi için telefonun rootlanması gerekir , aksi takdirde "Ne kullanıcı xxxx ne de mevcut işlem android.permission.INSTALL_PACKAGES" mesajıyla karşılaşacaksınız.

EDIT: @Izzy yorumda belirtildiği gibi, android.permission.INSTALL_PACKAGESyüklü uygulamalar için de verilir /system. Daha fazla bilgi için aşağıdaki yoruma ve SO sorusuna bakın.


Aslında ShareIt'ı denemediğimi ve gerçekten ne yaptığını analiz etmediğimi, sadece en olası teoriyi ortaya koyduğumu unutmayın. Eğer köklü değilseniz ve hala işe yaradıysa, bakmak için çok daha ilginç bir sorunumuz olabilir.
Andy Yan

1
@beeshyams Çin'de, üçüncü taraf uygulama pazarlarının çoğu sessiz veya otomatik kurulum yapacaktı. 1. yol burada açıklandığı gibidir ve ilk kurulumda kök izni isteyeceklerdir; ikincisi bir erişilebilirlik hizmetini açmanızı ve ardından "yükle" düğmelerinde tıklamaları otomatikleştirmenizi istemektir.
Andy Yan

1
Telefonum köklü değil. Ve kök izinleri de istemedi. Ancak Hindistan'da ShareIt, eşler arası uygulamalar yüklemek için çok popüler bir yöntemdir.
Neo

1
@beeshyams Bu uygulama ve gerekli izinlerin korkunç köstebek kaçının. Bunun yerine açık kaynak HTTP üzerinden paylaş (F-Droid'de kullanılabilir) kullanmayı düşünün . Ben hiçbir şekilde uygulaması ile bağlı değilim.
Grimoire

1
@beeshyams Aynı ağa bağlı herhangi bir cihazla çalışır. Anlayabildiğim kadarıyla, ana bilgisayar Android olmalı, ancak herhangi bir cihaz daha sonra aynı ağa bağlanabilir ve dosyaları indirmek için uygulamada gösterilen HTTP adresini ziyaret edebilir.
Grimoire
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.