Android'in eski sürümlerinde ekran görüntüsü almak için neden köklü bir telefona ihtiyacımız var?


21

Telefonumun ekran görüntülerini yakalamak için farkındayım, tüm ekran görüntüsü uygulamaları için köklü bir telefonum olması gerekiyor. Bu neden böyle? Neden Windows için olduğu gibi Android için de basit bir ekran görüntüsü uygulamasına sahip olamıyoruz?


2
Android'in etkin hale getirilmesi büyük bir mesele olsa da, iPhone'un bu özelliği kutudan çıkarması her zaman ilginç olmuştur.
shambleh

1
Yaklaşık Android 4.0'dan bu yana, Volume Down + Power düğmelerini basılı tutarak ekran görüntüsü almanın mümkün olduğunu unutmayın; bu kullanıma hazır bir işlevselliktir, uygulama gerektirmez (posterity ve arama motorları için burada belirtilmiştir)
Piskvor

Yanıtlar:


17

Cevap oldukça basit, bir izin sorunu.

Android , video görüntüsü için bir çerçeve oluşturucu olarak adlandırılanı kullanır . Çerçeve çubuğu / dev / graphics / fb0 konumunda. Temel olarak, kullanıcı arayüzünde değişiklikler meydana geldiğinde cihazın yazdığı bir akış olan bu "dosya", ekran görüntüsünün ~ 2 karesini içerir.

Çerçeve dosyası üzerindeki izinler rw- rw- ---. Son "grup" un 3 "-" 'ye sahip olduğunu unutmayın. Bu, temelde, eğer owner(root iseniz) değilseniz, o dosyadan okuma izniniz bile yok demektir.

Ekran yüklü olabilecek sistem yüklü bir uygulama olsaydı, çerçeveden okuma izni olurdu. Motorola Xoom'un ekran görüntülerini nasıl alabildiğine inanıyorum. Bir sistem uygulaması olarak, cihaza yüklü bir uygulama vardır.

Bir geliştirici için çerçeveyi okumak, okumaya erişimi varsa, aslında basittir.


1
Google’ın izinleri içine güncellemesi gerekiyor r--. Herhangi bir uygulama ekranınızda casusluk yapabilirse bu güvenlik riski oluşturabilir, ancak yüklemeden önce kabul etmeniz gereken izinlerden ( bu uygulama ekranınızı izleyebilir ) biri olmaz mı? Öyle ya da Google, menü dışına ekrana yerleşik bir ekran görüntüsü eklemeli, ardından başka hiç kimse erişemez. Sonuncusu benim durumumda iyi olur, demek istediğim şu an Chrome'a ​​baskı önizlemesi ekliyorlar.
JD Isaacks,

3
Herhangi bir pazar uygulaması ekranı okuyabilseydi, o + r modunun bir güvenlik kaygısı olacağını düşünüyorum.
kzh

Bence buna bağlı. Windows işletim sistemi, uygulamaların ekran görüntüsünü almasını engellemez. Şimdiye kadar, ekran görüntüsünün neden olduğu herhangi bir güvenlik sorunu duyduk mu?
Cheok Yan Cheng,

Pencerelerde ekran görüntüsü almanıza gerek yok, Windows makinesinden veri almanın çok daha kolay yolları var. Mobil bence daha büyük bir endişe. Kredi kartlarını işleyen Square gibi uygulamaları düşünün. Kartın ne zaman kullanıldığını dinleyen bir servis yazdıysam, ekran kapmak ve kredi kartı numarası, isim vb. Bilgileri almak mümkün olabilirdi
Ryan Conrad

7

Android'in güvenliği, tüm uygulamaları birbirlerinin verilerinden ayırmaya odaklandığından, kötü amaçlı uygulamaların güvendiğiniz uygulamalardaki verileri çalmasını veya değiştirmesini engellemek için bir uygulamanın diğer uygulamaların ekran görüntülerini almasına izin veremez.

Uygulamalarınızdan kaçının resimleri metne dönüştürmek için OCR gibi şeyler yapabileceğini düşünün, telefonumda bunu yapabilen en az dört uygulamayı düşünebilirim, en iyi örnek Google Goggles OCRing kitap başlıkları ve ayrıca OCRing'dir. yabancı dilde yazılmış metin blokları. Şimdi, uygulamalarınızın kaçının ekrana güvenilmez bir uygulamanın görünmesini istemediğinizi ekrana koyduğunu düşünün, telefonumda çeşitli sistemler için şifrelerimin şifreli bir veritabanına sahip bir şifre veritabanı uygulaması var, kötü amaçlı bir ekran koruyucu uygulaması bekleyebilir Bu şifre uygulaması çalışana kadar, üzerinde oturum açma ayrıntılarını gösteren bir ekran resmi çekin, ardından onları OCR ile gönderin ve gönderin. Uygulamayı Rehber veritabanına veya tarayıcı geçmişinize izin vermeseniz bile, Rehber listenizdeki her şey için aynı şeyi yapabilir. veya sohbet kayıtları vb. Bu, ekranınıza erişimi kötüye kullanmasının yalnızca bir yoludur.

Bu yüzden, ekran görüntüsü almanın evrensel olması için işletim sisteminde olması gerekiyor (tüm verilerinize zaten güveniyorsunuz). Bu nedenle ekran görüntüsü yerleşik olan telefonlarda, ayrı bir uygulama olarak değil, sistemin bir parçası olarak eklenmiştir.

Telefonunuzu köklendiriyor ve bir uygulamanın ekran görüntüsü almasına izin veriyorsanız, o zaman uygulamanın, diğer uygulamalara ve verilere erişme ve bunlara müdahale etme de dahil olmak üzere, sistemin yapabileceği her şeyi yapabileceği konusunda tam olarak güvendiğinizi ve bu erişimi kötüye kullanmamak için tamamen güven. Bu, Android'in Sistem / İşletim Sistemi dışında bir şey yapmasına izin verecek bir şey değil.


6

Kısa cevap: 1) bilgisayarlar Karmaşık ve 2) ekran görüntüsü işlevselliği aslında çok basit değil (programcı için, kullanıcı için değil).

Başka bir deyişle, ekran görüntüsü almak, ekran görüntüsü alma işleminin işletim sistemi iç kısımlarına derinlemesine bağlanmasını, onlarla biraz uğraşmasını ve tekrar açılmasını gerektirir. Android, yerleşik bir güvenlik modeline sahip olduğundan (Windows'ta görülen "cıvatalanmış çarpma" nın tersine), birkaç güvenlik bariyerinde ekran görüntüsünü alarak. Bunlar olabilir atlanabilir, ancak şu anda yalnızca pratik yolu (delikler oluşturarak kısa - ve potansiyel açıkları - çekirdekte) sınırlamalara tabi değildir çok güçlü kök hesabı, kullanmaktır.


1
Bilgisayar donanım işleri hakkında pek bir şey bilmiyorum ama GPU'nun ekrana bir "resim" gönderdiğini varsayıyorum. Bu görüntü yakalanıp kaydedilemedi mi?
JD Isaacks

2
@John Isaacks, temelde framebuffer ile olan şey budur. neden hala root gerektirdiğine dair cevabımı gör.
Ryan Conrad
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.