Форум программистов, компьютерный форум CyberForum.ru

Как правильно обновлять картинку с ip камеры - Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Android Ant сборка подарите пример http://www.cyberforum.ru/android-dev/thread1063655.html
Собсвенно САБЖ пли-и-из! :cry: Уже замучился. Раз 10-20 пытался собрать проект из командной строки по инсрукциям. Все необходимое скачал, настроил... Но потом надо изменить проет, подстроить его, прописать ключи... Мне-бы хотя-бы без ключей и обфускации! Когда пойму принцип сам дополнения подключу... В инструкции иногда пишут: 3. Для ленивых открываем проект в NetBens, он создаст...
Android POST запрос из андроид приложения Здравствуйте, Я хочу отправить POST-запрос из андроид приложения, ответ от сервера получать необязательно. На сайте POST-запрос отправляется с помощью этого скрипта: $(document).ready(function(){ $("#zayvki").click(function runajax(){ var music = $('#pole0').val(); var nickname = $('#pole1').val(); var text = $('#text').val(); http://www.cyberforum.ru/android-dev/thread1063609.html
Android Не работает Margin
Пишу в xml такой код: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent">
Android SQLite медленное выполнение оперетора LIKE
Добрй день! Есть запроc: SELECT * FROM Book WHERE Name LIKE 'test%' Так вот этот запрос выполняется очень медленно. Как я понял оператор LIKE переводит все значения в больште буквы(ToUpper) и из-за этого так долго идет запрос. Подскажите, есть ли другие варианты такого запроса?
Android Загрузка изображения из сети, в адаптере GridView http://www.cyberforum.ru/android-dev/thread1063332.html
Есть адаптер, в котором открывается новый поток и грузится изображение из сети, в загружающий класс передается ссылка и данные, проблема в том что загрузка изображений не останавливается, где то допустил ошибку, помогите разобраться: адаптер: public class GridViewAdapter extends BaseAdapter { private static class ViewHolder { TextView name,count_download; ...
Android С++ и android Привет форумчане, такая ситуация. Мой друг изучил доволи неплохо с++ , и вот натрапил на разработку под андроид и стоит перед вопросом, андроид как говорится тема перспективаня . Но учить и то и то сразу не всегда может хорошо сказаться , и с++ на пол пути бросать тоже не хорошо . Что посоветуете , подождать с андроидом та добить с++ или можно паралельно учить немного и андроид(джава)? подробнее

Показать сообщение отдельно
apollox
5 / 0 / 0
Регистрация: 04.09.2012
Сообщений: 7
05.01.2014, 21:27     Как правильно обновлять картинку с ip камеры
Доброе время суток, учусь программировать под андроид, пытаюсь написать приложение для получение картинки с ip-камеры.
Приложение должно обновлять изображение с заданным интервалом и корректно отлавливать отсутствие соединения.
Пока сделал так:

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
27
28
29
30
31
32
33
34
35
36
37
public class MainActivity extends Activity implements OnClickListener {
  
  /** Called when the activity is first created. */
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);    
   
    Button btnCamera = (Button) findViewById(R.id.btnCamera);
    btnCamera.setOnClickListener(this);   
  }
  
    public void onClick(View v) {
     Timer timer = new Timer();  
     timer.schedule(new TimerTask() {
         @Override
          public void run() {           
              MainActivity.this.runOnUiThread(new Runnable() {                      
                  public void run() {            
                    final WebView webView = (WebView) findViewById(R.id.webView);
                    
                    webView.setWebViewClient(new WebViewClient() {
                       public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
                         webView.setVisibility(View.INVISIBLE);
                       }
                       public void onLoadResource (WebView view, String url) {
                         webView.setVisibility(View.VISIBLE);
                       }                                   
                     });
                    
                    webView.loadUrl("http://ip:port/path_to_camera_image/");                     
                 }
              });
          }
     }, 0, 5000);
    }  
}
Что мне не нравится:

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

К тому же почему-то при отсутствии соединения с камерой сначала все же мелькает страница 404 - страница не найдена, а потом уже срабатывает webView.setVisibility(View.INVISIBLE).
Это нежелательно, потому что при этом высвечивается строка запроса с параметрами подключения к камере.

Насколько я понимаю, упрощенно должно быть так:
только когда картинка полностью загрузилась (или не загрузилась), она вызывается по новой с заданным интервалом.
Я делал такое приложение на Javascript, там я знаю как это сделать, а под андроид не понимаю

___
webView.setWebViewClient(new WebViewClient() {
public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
webView.setVisibility(View.INVISIBLE);
setTimeout(webView.loadUrl("http://ip: port/path_to_camera_image/",interval);

}
public void onLoadResource (WebView view, String url) {
webView.setVisibility(View.VISIBLE);
setTimeout(webView.loadUrl("http://ip: port/path_to_camera_image/",interval);
}
});

webView.loadUrl("http://ip: port/path_to_camera_image/");
___

Пардон, что код обычным текстом, иначе нужные строки движок форума не выделяет.

Что мне нужно написать вместо выделенных строк, или я вообще не в том направлении копаю?

Заранее спасибо!
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 12:00. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru