pracuję w udziale wyświetlacz tabletu z więcej niż jednej tabeli (wszystkie korzenie), połączony za pośrednictwem Wi-Fi, i m, stosując następujące metody (wszystkie wewnątrz jednej nici)Android wyświetlacz udział w innych urządzeniach
1 - robię zrzut ekranu.
Process sh = Runtime.getRuntime().exec("su", null,null);
OutputStream os = sh.getOutputStream();
os.write(("/system/bin/screencap -P " + "/sdcard/test/img.png").getBytes("ASCII"));
os.flush();
os.close();
sh.waitFor();
2- skompresować obraz zrzutu ekranu.
Bitmap mBitmap = BitmapFactory.decodeFile(Environment.getExternalStorageDirectory().getPath() + "/test/img.png");
OutputStream outputStream = null;
File file = new File(Environment.getExternalStorageDirectory().getPath() + "/test/img2.png");
outputStream = new FileOutputStream(file);
mBitmap.compress(Bitmap.CompressFormat.JPEG, 15, outputStream);
outputStream.flush();
outputStream.close();
- Otwórz gniazdo i wyślij skompresowany obraz na inny tablet.
to działa, ale moim problemem jest opóźnienie oglądania w innych tabletach trwało 4-5 sekund, aby odświeżyć nowy wyświetlacz, czy istnieje lepsze podejście do wyświetlania w czasie rzeczywistym?
Domyślam się, że pytasz trochę, jesteś ograniczony do Wi-Fi, czytasz obraz z SD, kompresujesz i wysyłasz. Z drugiej strony również przeprowadzam wiele procesów, jak sądzę, nawet jeśli się tego dokonasz, to nie dostarczy ci więcej niż sekundę. – Rigotti
@Rigotti Ok ... czy jest jakikolwiek inny sposób osiągnięcia tego, czego potrzebuję? –