An Android mobile app for viewing device screen in your web browser

Related tags

App ScreenStream
Overview

Screen Stream over HTTP

An Android mobile app for viewing device screen in your web browser.

xscode   GitHub   GitHub release (latest by date)

Foo

Developed by Dmitriy Krivoruchko · If there are any issues or ideas feel free to contact me.


The application allows viewing the device screen in your web browser. The main idea is to show your device screen during presentations and demos. No need of any additional software except for this app and a web browser. Google Play version contains Ads, F-Droid, AAPKS or FirebaseFree versions are Ad-free.

Get it on Google Play Get it on F-Droid Get it on AAPKs

Read this in other languages (outdated): 正體中文

It uses MJPEG to encode screen images and send them through the network. So it works with any desktop or mobile browser which supports MJPEG (Chrome, Safari, EDGE, Firefox).

The application works via WiFi and/or 3G/LTE network.
Support for IPv4 and IPv6.
Fast and stable WiFi recommended because of high traffic and low network delay requirement. No Internet required, however, there must be a network connection between the client and the device.

The number of client connections is unlimited, but be aware that each of them requires some CPU resources and bandwidth to send data.

Application uses Android Cast feature and requires at least Android 5.0 to run.

WARNING: This is not a real time streaming app. Expected delay is at least 0.5-1 second or more on slow devices, bad WiFi or on heavy CPU load by other apps.
WARNING: This app is not designed for streaming video, especially HD video. Use Chromecast instead.
WARNING: This app does NOT support SOUND streaming, because MJPEG does not support sound.
WARNING: Some cell operators may block incoming connections to your device for security reasons, so, even if the device has an IP address from a cell operator, you may not be able to connect to the device on this IP address.
WARNING: Some WiFi networks (mostly public/guest) block connections between its clients for security reasons, so you may not be able to connect to the device via WiFi. For example, a laptop and a phone in this such a WiFi network will not be able to connect to each other.

Known problems

  1. On some devices no notification icon showing but notification is present. Android bug: 213309.

Screenshots

 
 
 
 
 
 

Features and libraries

Version 3.x based on Clean Architecture, Single Activity and MVI patterns and use:

Contribution

If you want to contribute with translation, you have to translate this 2 files:

  1. https://github.com/dkrivoruchko/ScreenStream/blob/master/app/src/main/res/values/strings.xml and
  2. https://github.com/dkrivoruchko/ScreenStream/blob/master/data/src/main/res/values/strings.xml

Then, please, make a pull request or send those 2 files to the developer via e-mail [email protected] as an attachment.

Your contribution is much appreciated. Thank you.

Developed By

Dmitriy Krivoruchko - [email protected]

If there are any issues or ideas feel free to contact me.

Privacy Policy

App privacy policy

License

The MIT License (MIT)

Copyright (c) 2016 Dmitriy Krivoruchko

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
Comments
  • Support for Tesla

    Support for Tesla

    As the built-in navigation application of Tesla is not good to use, i tried to find some real time screen streaming apps, finally i found this. However it is not work, it is ok for mobile or PC browser, but not for Tesla.

    opened by leelit 12
  • F-Droid can't build

    F-Droid can't build

    Since you bring an AAR: https://github.com/dkrivoruchko/ScreenStream/commit/79516902856769efcf9860718f65b3e8e6034914#diff-39e7d8c00954e920b98e7636f0ac30b2R102

    Where's its source code?

    opened by licaon-kter 11
  • How can I view the stream on SurfaceView or CanvasView?

    How can I view the stream on SurfaceView or CanvasView?

    I'm using features of ScreenStream i.e. capturing screen and streaming. The current implementation is amazing but I want something specific. I'm building an app to app streaming and not from app to WebView or Browser to be involved. And for that, I'm sure that I'll have to use SurfaceView or CanvasView or something of this sort. But I'm not sure exactly how. Can anyone suggest how can I achieve this? @dkrivoruchko @WaldiSt @tiborepcek

    opened by jayesh83 10
  • Run error.

    Run error.

    When I run this project in android studio it occurs an error.

    ` Could not determine the dependencies of task ':app:countFirebaseDebugDexMethods'.

    Cannot query the value of this property because it has no value available.

    `

    opened by ghost 9
  • Program type already present: android.support.v4.os.ResultReceiver$MyResultReceiver

    Program type already present: android.support.v4.os.ResultReceiver$MyResultReceiver

    I have tried importing and run your project and got this issue.

    Program type already present: android.support.v4.os.ResultReceiver$MyResultReceiver got this error. https://developer.android.com/studio/build/dependencies#duplicate_classes.

    I have tried excluding this ResultReceiver module and no luck same error. Below is the part i tried.

    implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:$coroutineVersion"){ exclude group: 'android.support.v4.os', module: 'ResultReceiver' }

    I have also searched the stackoverflow and found that mixing of old and androidx causing this problem.

    Any help

    help wanted 
    opened by RameshbabuJaga 9
  • How to show dialog on particular different route in server?

    How to show dialog on particular different route in server?

    Hi @dkrivoruchko It's been nice talking to you. You were really helpful and quick in earlier issues I opened #143 . Thanks for that

    Now, I'm trying to implement a remote access control feature in-app, where I use ScreenStream for streaming.

    I've created new rout in data.httpserver.HttpServerRxHandler file i.e. uri == HttpServerFiles.ROOT_ADDRESS + HttpServerFiles.ALLOW_REMOTE_ACCESS

    On the hit of this route, I want to show the dialog in-app module somewhere that says if you want to allow remote access or not by this particular client

    • on accepting I want to create a WebSocket, and let the client know somehow on which port WebSocket was created so that client can connect to that (as of now defined set of ports, seeing where I can connect)
    • on reject just ignore, do nothing

    Question:

    • How to show dialog on that route hit

    What I know/tried?

    • As per my understanding, ScreenStream is using finite automata where we've defined a bunch of states, actions. Mapping each state with actions using the matrix in StateToEventMatrix file.
    • I've thought of two solutions to this. 1. LocalBroadcastManager to send broadcast on route hit 2. An interface in RxHandler, which can be implemented and configured to show a dialog in Stream Viewer
    • But I think the way ScreenStream is sending events from data to app module is the correct way

    How to particularly go about implementing my requirement, I'm not getting, Can you help me with that?

    opened by jayesh83 8
  • Licensing!!!

    Licensing!!!

    I have some doubts about the licenses.

    I would like to add the sound feature in this app and upload it to the Play Store.

    May I have permission for this?

    I heard this because someone is already publishing your app without any changes.

    https://play.google.com/store/apps/details?id=com.onedayofcode.screenmirror

    opened by abiange 8
  • Please Add Remote Control.

    Please Add Remote Control.

    This app is great the only thing its missing IMO is the ability to remote control the phone that is being streamed. so i would like to suggest that improvement.

    thank you! -DM

    opened by the-mentor 8
  • HTML buttons to host keyboard buttons feature?

    HTML buttons to host keyboard buttons feature?

    I am using this app to display Google books on my eink reader, any chance of page up and down buttons on the webpage that invoke keyboard strokes on host device would be appreciated. This would allow me to navigate the book without holding the phone. YouTube is jittery but works enough for me. Great work.

    opened by twoxfh 8
  • Small stream image when streaming Samsung DeX desktop

    Small stream image when streaming Samsung DeX desktop

    Hi, I'm getting a very small image when streaming from Samsung DeX environment. The both screens are fullHD (1920x1080)

    Screenshot_20211024-232736_ScreenStream Zrzut ekranu 2021-10-24 232903

    By the way, I want to say thanks for such a great app!

    opened by maklimcz 7
  • File google-services.json is missing. The Google Services Plugin cannot function without it.

    File google-services.json is missing. The Google Services Plugin cannot function without it.

    When I go to build this in android studio, I get this error. Strange thing is, I've built previous versions just fine. And my understanding is that this app does not use google services plugin. Am I wrong? Do I need to set up my own configuration file from developers.google.com/mobile/add ?

    opened by bradyriddle 7
  • Possibility to backup the app config by ADB ?

    Possibility to backup the app config by ADB ?

    Hello, Thank you for your application, it works very well.

    I just have a small problem, it is to backup by the command 'adb backup'. I tried to do it but the ".ab" file I get is empty.

    Would it be possible to backup the config? or to find another way to configure the app remotely by another way?

    Thanks for your answer.

    opened by Xenxia 5
  • Means of support

    Means of support

    This app has been a real live saver over the years. Rock solid, with constant updates. It integrates perfectly into OBS and has saved so much time during Meetings, when I just shared my screen and opened the camera app in full view finder mode to show something. Small tools like this tend to neglect proper configuration options, but ScreenStream properly presents all the relevant config dials I want.

    Would love to throw some coffee money towards the dev. So a donation link or the GitHub built in one would make sense for a FOSS project of this age I think.

    opened by FrostKiwi 0
  • Other Networks

    Other Networks

    Are you planning/is there a way to be able to stream it so it can be viewed on another network, like remote streaming through a web server? If not, is there an app that can?

    opened by SirenGlitch 1
  • self signed httpS certificate

    self signed httpS certificate

    Please add a self-signed https certificate to improve security. Now broadcasting occurs without encryption via http and this is dangerous and not secure ---- RUS --- Прошу добавить самоподписанный https сертификат для повышения безопасности. Сейчас трансляция происходит без шифрования по http и это опасно и не безопасно

    opened by OmlineEditor 8
Releases(3.10.4)
Owner
Dmitriy Krivoruchko
Dmitriy Krivoruchko
Open Super dApp - Your gateway to the new digital commons. Integrated mobile messenger, Ethereum wallet, and Web 3.0 browser built on open, decentralized, and encrypted protocols.

A fully open source, open standard, decentralized "super app" including a secure, encrypted Matrix compatible messenger based off of the Element Messenger, and an Ethereum crypto wallet and web3 browser based off of Alpha Wallet.

2Gather 6 Jul 25, 2022
App for viewing passwords for the Nextcloud Passwords app.

Nextcloud Passwords WARNING: This app is still in progress, and thus some features like password editing or creation are not done yet. This app connec

Hèctor Godoy 6 Dec 2, 2022
A secure, open source web browser for Android.

SmartCookieWeb A secure, free and open source WebView-based web browser for Android. Beta Releases • Docs • Website Important note: Google recently an

null 224 Jan 1, 2023
A secure, open source web browser for Android.

README Styx Browser Help to Translate To help us translate Styx, press the image below. We would be very happy if you help us with the translation. In

Jamal 39 Dec 19, 2021
HyperUPnP is Android Application that lets you to Stream Media from PC, NAS or any other device running UPnP/DLNA compliant media server to your Android Device.

Hyper UPnP Android UPnP/DLNA client Stream Media from PC, NAS or any other device running UPnP/DLNA compliant media server to your Android Device. Int

Var Bhat 8 Jul 17, 2022
FinderUserTest - An application for viewing users in StackOverflow

FinderUserTest An application for viewing users in StackOverflow. The StackExcha

Epifanova Ksenia 2 Feb 9, 2022
Load the online comic content supported by any plug-in project to provide a convenient online comic viewing experience

kinoko Awesome manga reader. Download Description Load the online comic content supported by any plug-in project to provide a convenient online comic

null 176 Dec 30, 2022
Android-splash-screen-demo - Sample application to demo the various features provided in android-splash-screen

Android Splash screen API demo This is a sample application used to demonstrate the various features provided in android-splash-screen. More details c

Sridhar 1 Jan 3, 2022
Source code of JekyllEx Android App which can manage your Jekyll blog directly from your Android device!

JekyllEx Android App Built with ❤︎ by Gourav Khunger ?? Introduction JekyllEx is an Android App that allows you to manage a Jekyll Blog directly from

JekyllEx 24 Nov 8, 2022
Communicating between Wear OS and Android device using the OpWear module and a sample of displaying real-time camera on the watch and sending commands to the mobile by Wear OS.

OpWear-Cam Communicating between Wear OS and Android device using the OpWear module and a sample of displaying real-time camera on the watch and sendi

AmirHosseinAghajari 6 Nov 8, 2022
Manage your torrents from your Android device with Transdroid.

All popular clients are supported: µTorrent, Transmission, rTorrent, Vuze, Deluge, BitTorrent 6, qBittorrent, and many more. You can view and manage running torrents and individual files. Adding is easy via the integrated search or RSS feeds (full version required). Monitor progress using the home screen widget or background alarm service.

Eric Kok 1.1k Jan 5, 2023
Tournant is a Gourmand/Gourmet recipe parser which serves your dishes on your Android device

Tournant Gourmand/Gourmet recipe parser Website: tournant.zimbelstern.eu Tournant serves your favorite dishes on your Android device! With Tournant, y

null 5 Dec 23, 2022
A Simple Privacy Browser - Some ScreenShots(Actual App Even Looks Better 😃 ):

Lets_Browse A Simple Privacy Browser. Some ScreenShots(Actual App Even Looks Better ?? ): Features ?? : Bookmark Webpage Save Webpage as Pdf(Once Page

Harsh H. Rajpurohit 13 Dec 8, 2022
Backend service for mobile/web application for a small cinema playing only movies

FFC - Fast & Furious Cinema Backend service for mobile/web application for a small cinema playing only movies from Fast & Furious franchise. Some assu

Łukasz Lipka 0 Dec 12, 2021
A lightweight Android browser with modern navigation

Lightning Browser Speed, Simplicity, Security Download Master Branch Dev Branch Features Bookmarks History Multiple search engines (Google, Bing, Yaho

Anthony Restaino 1.9k Dec 28, 2022
Slide is an open sourced, ad free Reddit browser for Android

Slide Slide is an open source, ad free Reddit browser for Android. It is based around the Java Reddit API Wrapper. Slide is available on the Google Pl

Carlos Crane 1.7k Jan 9, 2023
GithubBrower - Github Browser Sample with Android Architecture Components

Github Browser Sample with Android Architecture Components This is a sample app

KuanTing 0 Jan 6, 2022
A plugin about embedded browser for IntelliJ IDEA.

browser English | 简体中文 This plugin provides embedded browser (based on Java Chromium Embedded Framework) support for IntelliJ IDEA. Get from Marketpla

蔡琪暢 0 Dec 15, 2021
Firefox Focus: The privacy browser - Browse like no one’s watching.

Firefox Focus for Android Browse like no one’s watching. The new Firefox Focus automatically blocks a wide range of online trackers — from the moment

Mozilla Mobile 2.1k Dec 28, 2022