Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.95/21: Рейтинг темы: голосов - 21, средняя оценка - 4.95
RosPC
-6 / 3 / 0
Регистрация: 21.09.2012
Сообщений: 80
#1

Скриншот экрана

14.11.2012, 17:52. Просмотров 3772. Ответов 13
Метки нет (Все метки)

Здраствуйте, мне нужно зделать програмно скриншот екрана... я нашол статтюhttp://developer.alexanderklimov.ru/...#screenshotapp по етому поводу но там немного не то что мне надо, здесь описано скриншот активного активити а мне нужно сделать скриншот всего екрана... Помогите пожалуста если кто то встречалса з такой проблемой..!

Зарание спасибо!
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.11.2012, 17:52
Ответы с готовыми решениями:

Сделать скриншот экрана в Genymotion
Подскажите как можно сделать скриншот экрана с помощью эмулятора Genymotion?

как программно сделать скриншот экрана
как програмно сделать скриншот экрана?

Как сделать скриншот экрана без прав Root-а?
как сделать скриншот всего экрана без использования(getRootView()) без рут прав...

Скриншот окна
Всем привет! Цель, сделать скриншот экрана устройства. В интернете нашел...

Скриншот в фоновом режиме
Цель - создание приложения, работающего в фоне и делающего снимок всего экрана...

13
kvaka
31 / 31 / 3
Регистрация: 26.06.2012
Сообщений: 166
14.11.2012, 20:40 #2
можешь сделать в эмуляторе: ctrl + alt + PrtScr
0
RosPC
-6 / 3 / 0
Регистрация: 21.09.2012
Сообщений: 80
14.11.2012, 23:39  [ТС] #3
Цитата Сообщение от kvaka Посмотреть сообщение
можешь сделать в эмуляторе: ctrl + alt + PrtScr
Читайте внемательнее!!!!!!!!!!
мне нужно зделать програмно скриншот екрана
0
Севак
15.11.2012, 10:05
  #4

Не по теме:

Цитата Сообщение от RosPC Посмотреть сообщение
мне нужно зделать програмно скриншот екрана
Цитата Сообщение от RosPC Посмотреть сообщение
я нашол статтю
oh my god :wall:

0
RosPC
-6 / 3 / 0
Регистрация: 21.09.2012
Сообщений: 80
15.11.2012, 16:48  [ТС] #5
Цитата Сообщение от Севак Посмотреть сообщение

Не по теме:



oh my god :wall:

и что это значит?
0
lifestyle
Mobile Developer
234 / 230 / 18
Регистрация: 10.05.2009
Сообщений: 917
17.11.2012, 15:25 #6
Если не ошибает память то до какойто версии андроида нельзя делать скрин шоты без рута.
А во вторых чем отличается скриншот активного активити от "всего экрана" ??!!
0
RosPC
-6 / 3 / 0
Регистрация: 21.09.2012
Сообщений: 80
20.11.2012, 16:19  [ТС] #7
Цитата Сообщение от lifestyle Посмотреть сообщение
Если не ошибает память то до какойто версии андроида нельзя делать скрин шоты без рута.
А во вторых чем отличается скриншот активного активити от "всего экрана" ??!!
Ну мне нужно скрин всего экрана!!!


Вот я и спрашываю, может есть способ это сделать?
0
lifestyle
Mobile Developer
234 / 230 / 18
Регистрация: 10.05.2009
Сообщений: 917
21.11.2012, 01:10 #8
Цитата Сообщение от RosPC Посмотреть сообщение
Ну мне нужно скрин всего экрана!!!
Так я и спрашиваю в чем разница между скрином всего экрана и активного активити?! (Актвити занимает весь экран вообще-то...)
0
RosPC
-6 / 3 / 0
Регистрация: 21.09.2012
Сообщений: 80
21.11.2012, 17:10  [ТС] #9
Цитата Сообщение от lifestyle Посмотреть сообщение
Так я и спрашиваю в чем разница между скрином всего экрана и активного активити?! (Актвити занимает весь экран вообще-то...)
мне нужно просто сделать скрин экрана в любое время и сохранить изображеные... в том и разница что програма будет работать в фоновом режыме... тойсть никакого активити не будет!!!)
0
dajver
410 / 274 / 22
Регистрация: 18.09.2010
Сообщений: 1,114
21.11.2012, 22:37 #10
Лучший ответ Сообщение было отмечено как решение

Решение

http://stackoverflow.com/questions/2...hot-on-android google вам в помощь

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// image naming and path  to include sd card  appending name you choose for file
String mPath = Environment.getExternalStorageDirectory().toString() + "/" + ACCUWX.IMAGE_APPEND;   
 
// create bitmap screen capture
Bitmap bitmap;
View v1 = mCurrentUrlMask.getRootView();
v1.setDrawingCacheEnabled(true);
bitmap = Bitmap.createBitmap(v1.getDrawingCache());
v1.setDrawingCacheEnabled(false);
 
OutputStream fout = null;
imageFile = new File(mPath);
 
try {
    fout = new FileOutputStream(imageFile);
    bitmap.compress(Bitmap.CompressFormat.JPEG, 90, fout);
    fout.flush();
    fout.close();
 
} catch (FileNotFoundException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
} catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}
Вызываем так
Java
1
Uri uri = Uri.fromFile(new File(mPath));
3
RosPC
-6 / 3 / 0
Регистрация: 21.09.2012
Сообщений: 80
22.11.2012, 16:41  [ТС] #11
Цитата Сообщение от dajver Посмотреть сообщение
http://stackoverflow.com/questions/2...hot-on-android google вам в помощь

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// image naming and path  to include sd card  appending name you choose for file
String mPath = Environment.getExternalStorageDirectory().toString() + "/" + ACCUWX.IMAGE_APPEND;   
 
// create bitmap screen capture
Bitmap bitmap;
View v1 = mCurrentUrlMask.getRootView();
v1.setDrawingCacheEnabled(true);
bitmap = Bitmap.createBitmap(v1.getDrawingCache());
v1.setDrawingCacheEnabled(false);
 
OutputStream fout = null;
imageFile = new File(mPath);
 
try {
    fout = new FileOutputStream(imageFile);
    bitmap.compress(Bitmap.CompressFormat.JPEG, 90, fout);
    fout.flush();
    fout.close();
 
} catch (FileNotFoundException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
} catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}
Вызываем так
Java
1
Uri uri = Uri.fromFile(new File(mPath));


Боооооооооооольшое спасибо!!!)))) только есть вопрос:
что в этой строке View v1 = mCurrentUrlMask.getRootView();
mCurrentUrlMask где его берут... или как его огласить...? Я зделал так private static final View mCurrentUrlMask = null; но я понимаю что это не верно!!!(((((( Ищо раз спасибо!!!
0
dajver
410 / 274 / 22
Регистрация: 18.09.2010
Сообщений: 1,114
22.11.2012, 16:48 #12
Замените
Java
1
View v1 = mCurrentUrlMask.getRootView();
на

Java
1
getWindow().getDecorView().getRootView()
или

Java
1
getWindow().getDecorView().findViewById(android.R.id.content)
1
RosPC
-6 / 3 / 0
Регистрация: 21.09.2012
Сообщений: 80
22.11.2012, 17:44  [ТС] #13
Цитата Сообщение от dajver Посмотреть сообщение
Замените
Java
1
View v1 = mCurrentUrlMask.getRootView();
на

Java
1
getWindow().getDecorView().getRootView()
или

Java
1
getWindow().getDecorView().findViewById(android.R.id.content)
Большое спасибо!!!)))

Добавлено через 50 минут
Извините но у меня возник ещо вопрос по поводу...)
getWindow().getDecorView().getRootView(); я создаю свой Service, и там соритса на getWindow()...((( Как зделать чтоби оно работало в сервысе? (тойсть я хочу чтоби скраншот делался в отдельном потоке...)
0
yura91
1 / 25 / 2
Регистрация: 23.10.2013
Сообщений: 2,323
05.08.2015, 14:24 #14
Uri uri = Uri.fromFile(new File(mPath)); где нужно прописывать??

Добавлено через 1 час 10 минут
все это норм только работает в рамках своего приложения а мне нужен скрин дисплея вообще а как это сделать может ASL попробовать??
0
05.08.2015, 14:24
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.08.2015, 14:24

Скриншот google map
Дайте пожалуйста пример того, как сделать скриншот карты google (api v2) и...

Как сделать такую игру(скриншот+)?
В этой игре физика "вид сверху". Нужно двигать блоки(они упираются друг в...

Скриншот гугл карты при нажатии на кнопку
Есть ли возможность написать обработчик для кнопки, который делает скриншот...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru