motofan logo
       
> 

Vscl 1.0.1 - глюки вверх, Как я пытался сделать резидентный мидлет

Chez
сообщение 31.10.2005, 12:13


Интересующийся
**

Группа: Пользователи
Сообщений: 49
Регистрация: 1.10.2005
Из: Таганрог
Пользователь №: 53 194
Модель телефона: Motorola E398
Прошивка: E790MaxEdition_v1

Рейтинг: 38.5



Я пишу мидлет для "E798" уже три дня - нормальный диктофон.
Всё вроде уже работает, но:

Я не знаю, как вызвать вибрацию у телефона. Пробовал Display.vibrate - шыш.
Потом была задумка cделать диктофон резидентом, чтобы он мог писать телефонные разговоры и по расписанию.

Прочитал где-то здесь, что для этого нужен VSCL. Сегодня ночью скачал Vodafone SDK ослом. Спал до утра. Утром прочитал доку. Решил усовершенствовать свой диктофон. Переделал мидлет - заюзал ResidentMIDlet, поправил Jad. Пофиксил Pat через e1_fs. При загрузке приложения выдаёт "Системная ошибка". И всё тут. Ошибка исчезает только если вернуть класс мидлета приложения к MIDlet, а не ResidentMIDlet. Поправил Jad досканально (см.аттач), как требует VSCL SDK - откатился к MIDP 1.0 и CLDС 1.0 - то же самое, ошибка.
Если кто-то знает, как фиксить - скажите здесь. Идеи, мысли, - а иначе крах светлой шпионской мечте...

Потом. Пытался через com.vodafone.v10.system.device.DeviceControl.setDeviceActive вызвать вибру/подсветку. НЕ РАБОТАЕТ. И всё тут. (Подсветка работает ч-з Display.flashBacklight, но криво).

Все Seem-ы касающиеся Vodafone выставлены правильно. Ставил в память и на флеш, всегда через MIDway.
В общем, чтой-то я засомневался, что этот VSCL вообще работает на E398 с прошивкой E790...

Таварищи, которые умеют юзать VSCL, или знают, что это невозможно, если вам не влом, расскажите, как мне дальше жить - забить на эту идею сразу, или парить мозг дальше? Если парить, то как? :)

Я уже во сне представлял себе как через полгода буду прослушивать свои телефонные записи... А тут, ых.
Отвечайте поскорее, а то напьюсь с горя, жена уйдёт...
Прикрепленный файл Dictaphone.jad.zip   ( 424 байт ) Кол-во скачиваний: 80
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
grafmoto
сообщение 31.10.2005, 12:37


ЯваМотоКодер
********

Группа: Почётные мотофаны
Сообщений: 2 003
Регистрация: 15.10.2004
Из: Северодвинск
Пользователь №: 16 752
Модель телефона: iPhone 3Gs
Прошивка: iOS 6.1.3

Рейтинг: 703



ну уж сразу:
Цитата(Chez @ Понедельник, 31 Октября 2005, 16:13)
Отвечайте поскорее, а то напьюсь с горя, жена уйдёт...
*


вот "заглушка" ResidentMIDlet.java для 798:

package com.vodafone.midlet;

public abstract class ResidentMIDlet extends javax.microedition.midlet.MIDlet
{

public abstract void dropped();

public abstract void notice(String s1);

public abstract void received(String s1, String s2, int i1);

public abstract void ring(String s1, String s2);

}

в 798 не
Цитата(Chez @ Понедельник, 31 Октября 2005, 16:13)
Пытался через com.vodafone.v10.system.device.DeviceControl.setDeviceActive вызвать вибру/подсветку. НЕ РАБОТАЕТ. И всё тут.
*


а com.vodafone.system.DeviceControl
глянь мой код у jrecorder - даже после обфускатора в нем разобраться раз плюнуть
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Chez
сообщение 31.10.2005, 14:18


Интересующийся
**

Группа: Пользователи
Сообщений: 49
Регистрация: 1.10.2005
Из: Таганрог
Пользователь №: 53 194
Модель телефона: Motorola E398
Прошивка: E790MaxEdition_v1

Рейтинг: 38.5



Спасибо, вы меня обнадёжили lol.gif

Цитата(grafmoto @ Понедельник, 31 Октября 2005, 16:37)
вот "заглушка" ResidentMIDlet.java для 798:

package com.vodafone.midlet;

public abstract class ResidentMIDlet extends javax.microedition.midlet.MIDlet
{

  public abstract void dropped();
 
  public abstract void notice(String s1);   
 
  public abstract void received(String s1, String s2, int i1);   
 
  public abstract void ring(String s1, String s2);   

}

Точно com.vodafone.midlet ? не com.vodafone.v10.midlet ?
почему в заглушке только 4 метода? можно добавить оставшиеся, типа "hungup" ?

Цитата(grafmoto @ Понедельник, 31 Октября 2005, 16:37)
а com.vodafone.system.DeviceControl
глянь мой код у jrecorder - даже после обфускатора в нем разобраться раз плюнуть

Посоветуйте пожалуйста толковый Java-декомпилятор?.. Если можно, ссылку в инет.
Или скажите сразу как надо чтобы заработало.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
grafmoto
сообщение 1.11.2005, 5:05


ЯваМотоКодер
********

Группа: Почётные мотофаны
Сообщений: 2 003
Регистрация: 15.10.2004
Из: Северодвинск
Пользователь №: 16 752
Модель телефона: iPhone 3Gs
Прошивка: iOS 6.1.3

Рейтинг: 703



Цитата(Chez @ Понедельник, 31 Октября 2005, 18:18)
Точно com.vodafone.midlet ? не com.vodafone.v10.midlet ?
почему в заглушке только 4 метода? можно добавить оставшиеся, типа "hungup" ?
*


абсолютно. для 798 com.vodafone.midlet.ResidentMIDlet, для всех остальных com.vodafone.v10.midlet.ResidentMIDlet. а в com.vodafone.midlet.ResidentMIDlet нет public void hungup(). на форуме уже несколько раз выкладывали описание всех классов для обоих прошивок.
Цитата(Chez @ Понедельник, 31 Октября 2005, 18:18)
Посоветуйте пожалуйста толковый Java-декомпилятор?
*


DJ Java Decompiler 3.7 например.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Chez
сообщение 1.11.2005, 8:29


Интересующийся
**

Группа: Пользователи
Сообщений: 49
Регистрация: 1.10.2005
Из: Таганрог
Пользователь №: 53 194
Модель телефона: Motorola E398
Прошивка: E790MaxEdition_v1

Рейтинг: 38.5



GrafMoto! Сделал как вы сказали - заюзал com.vodafone.system.device вместо com.vodafone.v10.system.device.
Файлы подготовил при помощите того же DJ Java Decompiler.
Вот что вышло:
Код

// Decompiled by DJ v3.9.9.91 Copyright 2005 Atanas Neshkov  Date: 02.11.2005 10:35:31
// Home Page : http://members.fortunecity.com/neshkov/dj.html  - Check often for new version!
// Decompiler options: packimports(3) annotate_fullnames deadcode

package com.vodafone.system.device;


// Referenced classes of package com.vodafone.v10.system.device:
//            MailListener, ScheduledAlarmListener, TelephonyListener, RingStateListener

public class DeviceControl
{

   private DeviceControl()
   {
   }

   public static final DeviceControl getDefaultDeviceControl()
   {
       return null;
   }

   public int getDeviceState(int i)
   {
       return 0;
   }

   public boolean isDeviceActive(int i)
   {
       return false;
   }

   public boolean setDeviceActive(int i, boolean flag)
   {
       return false;
   }

   public void blink(int i, int j, int k)
   {
   }

   public boolean setKeyRepeatState(int i, boolean flag)
   {
       return false;
   }

   public boolean getKeyRepeatState(int i)
   {
       return false;
   }

   public static void setMailListener(MailListener maillistener)
   {
   }

   public static void setScheduledAlarmListener(ScheduledAlarmListener scheduledalarmlistener)
   {
   }

   public static void setTelephonyListener(TelephonyListener telephonylistener)
   {
   }

   public static void setRingStateListener(RingStateListener ringstatelistener)
   {
   }

   public static final int BATTERY = 1;
   public static final int FIELD_INTENSITY = 2;
   public static final int KEY_STATE = 3;
   public static final int VIBRATION = 4;
   public static final int BACK_LIGHT = 5;
   public static final int EIGHT_DIRECTIONS = 6;
}

Я пытался только вызвать вибру, не наследовался от ResidentMIDlet. Таким образом пробовал:
Код
DeviceControl dc = DeviceControl.getDefaultDeviceControl();
dc.setDeviceActive(DeviceControl.VIBRATION, true);

Приложение не запускается. Выдаёт "Ошибка приложения" и падает. Такого не было, когда я использовал классы из VSCL - они просто не работали. Приложение не падало.

Пожалуйста, уделите мне время. Помогие завести водафон на E798! Должен получится очень прикольный продукт.

Цитата
на форуме уже несколько раз выкладывали описание всех классов для обоих прошивок.

не нашёл толкового ничего. Может, удалили темы? Дайте мне информацию.

Цитата
а com.vodafone.system.DeviceControl
глянь мой код у jrecorder - даже после обфускатора в нем разобраться раз плюнуть

После декомпиляции Jrecorder - я не нашёл в нём ничего связанного с "Vodafone" и кода вызова вибратора.

Помогите, плиз. Знаете ведь :)
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Inlined
сообщение 1.11.2005, 9:53


Интересующийся
**

Группа: Пользователи
Сообщений: 91
Регистрация: 5.9.2005
Из: Санкт-Петербург
Пользователь №: 50 635
Модель телефона: E398, DEFY

Рейтинг: 73.5



Список Java-классов прошивок E398/E1
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
grafmoto
сообщение 1.11.2005, 10:17


ЯваМотоКодер
********

Группа: Почётные мотофаны
Сообщений: 2 003
Регистрация: 15.10.2004
Из: Северодвинск
Пользователь №: 16 752
Модель телефона: iPhone 3Gs
Прошивка: iOS 6.1.3

Рейтинг: 703



список классов выше, а вибратор у Display:
public boolean vibrate(int duration);
Parameters:
duration - the number of milliseconds the vibrator should be run, or zero if the vibrator should be turned off
Цитата(Chez @ Вторник, 1 Ноября 2005, 12:29)
Помогие завести водафон на E798! Должен получится очень прикольный продукт.
*


vodafone классы уже давно используются приложениями (LP, JRecorder, Clock). для их активации нужно включить симы.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Chez
сообщение 1.11.2005, 10:38


Интересующийся
**

Группа: Пользователи
Сообщений: 49
Регистрация: 1.10.2005
Из: Таганрог
Пользователь №: 53 194
Модель телефона: Motorola E398
Прошивка: E790MaxEdition_v1

Рейтинг: 38.5



Цитата(grafmoto @ Вторник, 1 Ноября 2005, 14:17)
список классов выше, а вибратор у Display:
public boolean vibrate(int duration);
Parameters:
duration - the number of milliseconds the vibrator should be run, or zero if the vibrator should be turned off

Я пробовал вызывать Display.vibrate(1000); Телефон не вибрирует.

Цитата
vodafone классы уже давно используются приложениями (LP, JRecorder, Clock). для их активации нужно включить симы.
У меня старый Jrecorder видимо. Насчёт симов: с вашей странички инфа:
75/6 BACKLIGHT_VODAFONE_AVAILABLE ,
78/1 LRSK_SWITCHED_VODAFONE_AVAILABLE
72/1 KJAVA_VSCL_AVAILABLE

они включены на моём телефоне. Может есть ещё другие?
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Chez
сообщение 2.11.2005, 6:59


Интересующийся
**

Группа: Пользователи
Сообщений: 49
Регистрация: 1.10.2005
Из: Таганрог
Пользователь №: 53 194
Модель телефона: Motorola E398
Прошивка: E790MaxEdition_v1

Рейтинг: 38.5



Цитата(Chez @ Вторник, 1 Ноября 2005, 14:38)
Я пробовал вызывать Display.vibrate(1000); Телефон не вибрирует.

Завелась вибра!
Действительно, Display.vibrate(1000) - не вибрирует, а вот Display.vibrate(10000) - вибрирует, да ещё как!

--
Спасибо всем! Надеюсь всех вас порадовать в ближайшее время безлимитным диктофоном с кучей наворотов.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Vscl 1.0.1 - глюки вверх, Как я пытался сделать резидентный мидлет · Разработка Java-приложений · Forum
 

Ответ в темуСоздание новой темы
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 28.7.2025, 6:26

Форум живёт: