Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
283 views
in Technique[技术] by (71.8m points)

android - How does TeamViewer take screenshots and allow remote control without root?

Background

TeamViewer allows to remote control other android devices . it's quite slow, but it does the job.

it requires 2 apps being installed. one that controls (link here), and one for being controlled (link here) .

I'm not sure if it has any alternatives, but I would like to know if it's possible to do the same.

The problem

I can't find any special permission used by teamViewer, and it does it all without root.

This is weird, since I've read on so many places that in order for an app to take a screenshot, it must have root permission (or be connected to a computer and use ADB to take a screenshot).

The question

How could it be? What does TeamViewer has that makes it possible?

How can you take a screenshot without any special permission? This app isn't even a system app...

is it even possible to do any of the things TeamViewer does without root?

Are there alternatives to TeamViewer?

Suppose I do have root, how do I remote control or stream screenshots efficiently?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

Teamviewer does NOT support taking screenshots or remote control without root. The only Android devices it does manage to pull this off is on Samsung devices

Update 2019 June: Now it supports a slew of different Android OEMs beyond Samsung. Notably, Google itself is absent (So no remote control on Pixel series, just screensharing)

This Teamviewer press release shows how it's done. It basically installs this Samsung specific addon from the Play Store. As a background, Samsung got this working to counter Amazon's Kindle Fire's new feature called Mayday. Technically, Samsung basically gave Teamviewer a bunch of special pseudo-root-level certificates and signatures so the app can work seamlessly for everyone (by having draw-over-other-apps and make-interactions-on-users-behalf access via the Accessibility APIs presumably).

This is how it looks on non-Samsung non-rooted devices [left] and how it asks for Super User access on non-Samsung rooted devices [right] (Click through for original resolution):

Teamviewer Quicksupport asking for screenshots from end user Teamviewer Quicksupport asking for screenshots from end user


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...