Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для мобильных телефонов > MidletPascal > Основной форум

Основной форум Сюда все проблемы связанные с программированием.

Ответ
 
Опции темы
Старый 03.07.2008, 15:06   #1
jkeks
Нуждающийся
 
Регистрация: 04.10.2007
Сообщений: 64
Написано одно полезное сообщение
Как автообновить JAVA прграммку на мобиле ?

Хочу сделать так чтобы программка установленная на сотовом могла сама себя обновлять, т.е. передавать ссылку системе, которая запустит браузер для установки.
Как это сделать ? Непойму.. а знаю что так делают
(Offline)
 
Ответить с цитированием
Старый 03.07.2008, 19:02   #2
ViNT
Модератор
 
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений
(для 817 пользователей)
Ответ: Как автообновить JAVA прграммку на мобиле ?

Это можно сделать с помощью функции platform_request из библиотеки m2.
(Offline)
 
Ответить с цитированием
Старый 04.07.2008, 08:23   #3
odd
Мастер
 
Аватар для odd
 
Регистрация: 06.09.2007
Адрес: Донецк, ДНР
Сообщений: 1,023
Написано 298 полезных сообщений
(для 713 пользователей)
Ответ: Как автообновить JAVA прграммку на мобиле ?

Подключаешь библиотеку m2 и вызываешь функцию
типа platform_request('http://tvoi.portal/midlet.jar')
Я такое проделывал в реальных приложениях. Даже чуть сложнее делал.
Сначала скачивал текстовый файл, в котором прописана версия программы, а потом анализировал текущую версию программы с выложенной на сайте и в зависимости от результатов и выбора пользователя скачивал или не скачивал обновленную версию программы.
Я так делал на SE. Nokia, насколько я понял, такого не позволяют.
(Offline)
 
Ответить с цитированием
Старый 04.07.2008, 08:55   #4
jkeks
Нуждающийся
 
Регистрация: 04.10.2007
Сообщений: 64
Написано одно полезное сообщение
Ответ: Как автообновить JAVA прграммку на мобиле ?

Поставил, сама функция работает, т.е. запускается стандартный браузер.
Только у меня возник вопрос следующий: После успешной загрузки, стандартный браузер говорит, что KAKA.jar не поддерживается телефоном и записывает программку в папку Прочее (телефон SE K300). Тогда как обновлялся я и не раз из других программок. Мне же надо перезаписать саму себя в папке Приложения. А тут даже выбора нет никакого. Не подскажете в чем проблема может быть ?
(Offline)
 
Ответить с цитированием
Старый 04.07.2008, 09:41   #5
jkeks
Нуждающийся
 
Регистрация: 04.10.2007
Сообщений: 64
Написано одно полезное сообщение
Ответ: Как автообновить JAVA прграммку на мобиле ?

попробовал обновить программку чужую (w1) обновилась прекрасно, дело не в телефоне значит
(Offline)
 
Ответить с цитированием
Старый 04.07.2008, 09:45   #6
GOODBYTE
AnyKey`щик
 
Аватар для GOODBYTE
 
Регистрация: 21.06.2008
Адрес: Нижегородская обл.
Сообщений: 17
Написано одно полезное сообщение
Ответ: Как автообновить JAVA прграммку на мобиле ?

Создай на хостинге с поддержкой PHP документ.
Назови его например index.php , и впиши в него вот этот код :

<?
    $all_versions = array( // массив со всеми версиями программы.
    0 => '1.0.0',
    1 => '1.0.1',
    2 => '1.0.2',
    3 => '1.0.3',
    4 => '1.0.4',
    5 => '1.0.5'
    );
    
    $client_version = isset($_GET['version']) ? $_GET['version'] : $all_versions[0];
    
    if($client_version != $all_versions[sizeof($all_versions)-1])
    {
        echo 'Necessary upgrade.';
    } else {
        echo 'Upgrade does not need.';
    }
    
?>
запомни к нему адрес.

А обращаться из MP к серверу очень просто.
Только вот в библиотеке lib_web от pilgrim'a непонятно почему метод web.get_response ничего не возвращает..

вот код.

program internet;

uses web;

var 		connection : integer;
				VERSION, resultat : string;	

begin
	VERSION := '1.0.0';	
	connection := web.open('http://localhost/index.php?version=' + VERSION);

	web.set_method('GET');
					
	web.set_property('Host', 'localhost');
	web.set_property('Accept', 'text/html');
	web.set_property('Accept-Charset', 'UTF-8');
	web.set_property('Accept-Encoding', 'deflate');
	web.set_property('Accept-Language', 'ru');
	web.set_property('User-Agent', 'MP Browser');
							
		if web.send = 200 then
					begin
									
					if web.get_response = 'Necessary upgrade.' then
					
						begin
							
							DrawText('Обновление',0,0);
							repaint;
							delay(5000);
							
						end;
					
					else
						
						begin

							DrawText('Всё ок',0,0);
							repaint;
							delay(5000);

						end;
		
					end;
			 else

					begin
									
					DrawText('Ошибка сервера.',0,0);
					repaint;
					delay(5000);
									
					end;
		
		web.close;

end.
__________________
..глаза боятся, руки делают..
http://forum.boolean.name/image.php?type=sigpic&userid=2535&dateline=1215022  556
(Offline)
 
Ответить с цитированием
Старый 04.07.2008, 10:46   #7
jkeks
Нуждающийся
 
Регистрация: 04.10.2007
Сообщений: 64
Написано одно полезное сообщение
Ответ: Как автообновить JAVA прграммку на мобиле ?

Дак это че, пример как прочитать чего-то, а я хочу инсталлировать.
Есть программа(123.jar) в папке Приложения.
1. Запускаем ее (123.jar)
2. В ней выбираем "Обновить"
3. Программа (123.jar) Запускает встроенный браузер
4. Браузер завершает работу программы
5. Браузер скачивает новую версию 123.jar
6. Браузер Перезаписывает старую версию (123.jar) новой (123.jar)
7. Браузер Предлагает запустить новую версию (123.jar)
Вот так все должно быть.
Данный вначале пример запускает браузер и тот скачивает судя по всему новую версию, но он не может ее перезаписать по причине:
что (123.jar) "не поддерживается телефоном" и записывает программку в папку "Прочее"
(Offline)
 
Ответить с цитированием
Старый 04.07.2008, 13:10   #8
GOODBYTE
AnyKey`щик
 
Аватар для GOODBYTE
 
Регистрация: 21.06.2008
Адрес: Нижегородская обл.
Сообщений: 17
Написано одно полезное сообщение
Ответ: Как автообновить JAVA прграммку на мобиле ?

Дак это че, пример как прочитать чего-то, а я хочу инсталлировать.
так тебе можно и всю программу написать =))

а по сути добавил ту же m2 библиотеку, и еще почитал бы о функции halt в мануале. И всё.. ))
__________________
..глаза боятся, руки делают..
http://forum.boolean.name/image.php?type=sigpic&userid=2535&dateline=1215022  556
(Offline)
 
Ответить с цитированием
Старый 04.07.2008, 13:48   #9
jkeks
Нуждающийся
 
Регистрация: 04.10.2007
Сообщений: 64
Написано одно полезное сообщение
Ответ: Как автообновить JAVA прграммку на мобиле ?

после вызова r:=platform_request('http://asdasd/123.jar');
сразу делаю halt - не работает так.
(Offline)
 
Ответить с цитированием
Старый 04.07.2008, 14:36   #10
ViNT
Модератор
 
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений
(для 817 пользователей)
Ответ: Как автообновить JAVA прграммку на мобиле ?

Сообщение от jkeks Посмотреть сообщение
после вызова r:=platform_request('http://asdasd/123.jar');
сразу делаю halt - не работает так.
В смысле обновление не происходит или приложение не закрывается?
(Offline)
 
Ответить с цитированием
Старый 04.07.2008, 14:52   #11
GOODBYTE
AnyKey`щик
 
Аватар для GOODBYTE
 
Регистрация: 21.06.2008
Адрес: Нижегородская обл.
Сообщений: 17
Написано одно полезное сообщение
Ответ: Как автообновить JAVA прграммку на мобиле ?

ViNT, скорее всего не закрывается приложение.
Например, у меня на Symbian открытые приложения переходят в "паузу", т.е. на время отхода меня в меню или куда-то еще в телефоне (но не в приложении) оно приостанавливается.
Скорее всего оно выключится только тогда, когда пользователь вернется в программу..
__________________
..глаза боятся, руки делают..
http://forum.boolean.name/image.php?type=sigpic&userid=2535&dateline=1215022  556
(Offline)
 
Ответить с цитированием
Старый 04.07.2008, 14:58   #12
ViNT
Модератор
 
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений
(для 817 пользователей)
Ответ: Как автообновить JAVA прграммку на мобиле ?

У меня на SE без проблем Halt'ом закрывается(если поставить его сразу после platform_request.
Вообще, если бы дело было в том, что приложение не закрыто, SE написал бы что-то типа "Ошибка при выполнении операции". А тут, похоже, MIME-тип не распознает. Я в вопросах php не силен, но похоже нужно чтобы сервер передавал верное значение MIME-Type(это не винда, тут расширение файла мало что значит).
(Offline)
 
Ответить с цитированием
Старый 04.07.2008, 15:11   #13
GOODBYTE
AnyKey`щик
 
Аватар для GOODBYTE
 
Регистрация: 21.06.2008
Адрес: Нижегородская обл.
Сообщений: 17
Написано одно полезное сообщение
Ответ: Как автообновить JAVA прграммку на мобиле ?

<? 
    $all_versions = array( // массив со всеми версиями программы. 
    0 => '1.0.0', 
    1 => '1.0.1', 
    2 => '1.0.2', 
    3 => '1.0.3', 
    4 => '1.0.4', 
    5 => '1.0.5' 
    ); 
     
    $client_version = isset($_GET['version']) ? $_GET['version'] : $all_versions[0]; 
     
    if($client_version != $all_versions[sizeof($all_versions)-1]) 
    { 
        echo 'Necessary upgrade.'; 
    } else { 
        echo 'Upgrade does not need.'; 
    } 
     
?>
если ты про это, то он просто показывает последнюю версию мидлета, ну и собственно возвращает результат.

А насчёт отдачи сервером, то это нужно прописывать расширения в .htaccess , но это при условии что сервер Apache.

AddType text/vnd.sun.j2me.app-descriptor .jad # для JAD
AddType application/java-archive .jar # для JAR
__________________
..глаза боятся, руки делают..
http://forum.boolean.name/image.php?type=sigpic&userid=2535&dateline=1215022  556
(Offline)
 
Ответить с цитированием
Старый 04.07.2008, 15:27   #14
jkeks
Нуждающийся
 
Регистрация: 04.10.2007
Сообщений: 64
Написано одно полезное сообщение
Ответ: Как автообновить JAVA прграммку на мобиле ?

Да мне не надо проверять: Есть новая версия или нету ее.
Мне надо Проинсталлировать и все.
Проверка у меня давно написана.
Попробовал добавить в htaccess строчки:
AddType text/vnd.sun.j2me.app-descriptor .jad # для JAD
AddType application/java-archive .jar # для JARЭффекта никакого, вот она ссылка мидлетега:
http://freemir.ru/freemir.jar в нем есть кнопочко - Обновить.
(Offline)
 
Ответить с цитированием
Старый 04.07.2008, 15:34   #15
ViNT
Модератор
 
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений
(для 817 пользователей)
Ответ: Как автообновить JAVA прграммку на мобиле ?

SE k510i - полет нормальный.
Запускается загрузка, приложение грузится и устанавливается.
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Библиотеки Java GRAY_WOLF Разработка MIDlet Pascal 7 28.11.2009 17:54
Java online demon112 MidletPascal 7 21.08.2009 06:55
Скачать Java Studio Shelaev Denis Болтовня 1 22.07.2009 19:20
Таблицы на мобиле ? jkeks MidletPascal 5 11.03.2009 22:37
POST запрос работает на эмуле а на мобиле нет Aluk Основной форум 14 11.11.2008 08:36


Часовой пояс GMT +4, время: 18:55.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com