| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java ME (J2ME) > возможно изменить несколько параметров приложение |
| Автор: zalim 19.1.2007, 12:43 |
| Такая ситуация: Есть некоторое готовое приложение в формате jar. В приложении необходимо изменить некоторые параметры. В частности, при первом запуске программы необходимо заполнить 2 поля, которые он затем отсылает по GPRS и регистрирует их на сервере. Так вот, необходимо чтобы при запуске она запрашивала только первое поле, а второе как бы уже заполнено определенными данными. Возможны такие изменения? Если да, то как это сделать? (я "чайник") P.S. Это программа, распространителям которого дают бонусы. Будет обидно, если первое поле заполнят, а идентификатор распространителя (второе поле) оставят пустым. |
| Автор: W0LF 19.1.2007, 12:55 | ||
В джад положить какой-нидь допустим даже текстовый файл, в котором и будет то поле. Брать данные из него. А когда тебе надо будет другой, то с помощью winrar, допустим, подмениваешь его на другой с таким же именем, но с другим контентом. в джаде меняешь размер джара. и все |
| Автор: Dancer 19.1.2007, 14:05 |
| W0LF, Да? хм, это конечно так, но не забывай у человка JAR и в Java он не понимает (ну, или хотя бы в мидлетах - это точно, покрайней мере так он пишет). И то что ты предлагаешь, то ему нужно сначала вытащить информацию, какой class у него является главным классов его мидлета, далее декомпилить его, после этого внести необходимые изменения, причём не факт что параметр который ему нужно передать - прямо-таки сразу и будет передаваться в startApp(). После всех изменений обратно собрать мидлет, и потом уже пытаться это дело в телефон запихать и проверить. Для "чайник" - это достаточно будет сложно. Поковырять то конечно можно, но только нужно чётко понимать, что нужно подковырять и найти и определить место, где именно это нужно ковырять (может быть приложение уже использует какой-то механизм работы с сервером, и имя сервака жёстко прописано, ну и т.д.) Если человек ни одного мидлета сам не написал, то ему очень сложно будет сделать данную операцию (но шаги я вроде бы изложил Добавлено @ 14:12 ------------------------- скорее всего, данный пост нужно в РАБОТА переместить, если конечно zalim нужен лишь данный фикс и без разницы как будет сделано. Если же он сам хочет во всё это разбираться и ковыряться, то пусть весит здесь, может быть кто чего дельного насоветует ещё |
| Автор: W0LF 19.1.2007, 14:43 | ||
Да, Dancer, я не дочитал кой чего -
а тогда ты полностью прав Добавлено @ 14:47 декомпилить лучше всего jad'ом |
| Автор: zalim 19.1.2007, 15:49 | ||||||
У меня есть и jad, только он не используется. Телефон сам Siemens, а туда нужно записывать .jar, или не так. Еще в jad подозрительно мало текста. Разве этого достаточно для работы приложения!?
сервер менять не нужно. Надо что бы при регистрации (при первом запуске), приложение отправляла уже определенный номер, а не спрашивала пользователя ввести его. Вот содержимое jad:
Это содержимое META-INF в jar файле:
В РАБОТА лучше не перемещать. Я пытаюсь понять в JAVA хоть что-то, но никто нормально не объяснит. Может вам это не понравится, но плиз еще раз поподробнее. С чего начать? Каким инструментарием нужно все это делать? Все есть, просто установить надо то, что нужно. |
| Автор: W0LF 19.1.2007, 16:08 |
сначала открой джар винраром например и посмотри че там? какие имена у файлов с расширением .class? |
| Автор: Dancer 19.1.2007, 16:10 |
| это всёравно что зайти на форум автомобилистов и сказать, знаете, я вот не силён в двигателях (к примеру), как бы мне поршень заменить самому (потому что интересно и пытаюсь это понять). Вот как думаешь, что тебе на это впервую очередь ответят, скорее всего пошлют к документации. (ну, допустим это хороший форум Вот если я тебя сейчас пошлю прочесть хоть чтонибудь по программированию мидлетов интересно ты обидишься или нет? Здесь есть FAQ, есть для тех кто начинает не плохой сайт со статьями как начинать с нуля и так далее. (www.mobilab.ru здесь есть статьи по программированию в j2me) если бы у тебя был код, да возможно тебе бы здесь хоть что-то подсказали, ты же хочешь сейчас взять чужую программулину и вломать её под свои нужды. То что ты хочешь сделать - это реально, но !!! уважайте труд разработчиков Можно сделать более универсальный вариант, и может быть разработчики его сделали (ну или планируют сделать, возможно нужно с ними связаться). Номер вводится один раз при старте мидлета, далее в специальной памяти сохраняется, и потом уже используется из этой памяти. Если хочешь разобраться, то начни с того, КАК ПИСАТЬ МИДЛЕТЫ, далее по мере продвижения будут появляться конкретные вопросы, и вот на них тебе здесь всегда помогут ответить. На то что задано сейчас |
| Автор: W0LF 19.1.2007, 16:11 | ||
Добавлено @ 16:21 Извини, но в таком случае я тебе наверно не смогу помочь... |
| Автор: Dancer 19.1.2007, 16:49 |
дык это в прниципе никого не должно смущать вендор же не Sun Или я не прав, а zalim? (или же ты работаешь на e-port, но не в Java разработках |
| Автор: W0LF 19.1.2007, 17:08 |
| Блин, я сегодня тупо туплю Я Created-By приписал к Вендору... Надо поспать Добавлено @ 17:09 Но смысл остается тот же |
| Автор: javastic 22.1.2007, 10:31 |
| Очень часто встречал на других форумах где народ обсуждает декомпиляцию мидлета с целью изменения в нём каких-либо свойств и потом обратную компиляцию. ;) |
| Автор: zalim 22.1.2007, 11:30 |
| javastic, cсылочку плиз |
| Автор: javastic 22.1.2007, 13:13 |
| zalim, извини, не помню. Полазай по поисковикам. Просто то что тебе нужно немного не по теме форума. |
| Автор: Vladimir35 22.1.2007, 16:01 |
| Практически все декомпиляторы основаны на jad.exe И в большинстве своем представляют жалкое зрелище. Единственные достойный внимания декомпилятор можно найти по следующей ссылке: http://wl.h15.ru/ |
| Автор: Dancer 22.1.2007, 16:25 |
| да, это самый достойный декомпилятор, но он так же основан на JAD, просто ребята его достаточно серьёзно доработали, особенно в плане распарсивания case |
| Автор: Vladimir35 22.1.2007, 16:31 |
| Какие еще "ребята"? Автор - [wl] - один человек. И изюминка программы не в кейсах. |
| Автор: javastic 22.1.2007, 16:34 |
| Vladimir35, что-то не нашел. |
| Автор: Vladimir35 22.1.2007, 16:55 |
| В разделе Файлы http://wl.h15.ru/index.php?p=3 рекомендую всем ознакомится и с другими материалами сайта |
| Автор: Dancer 22.1.2007, 17:50 |
| case тут притом, что он декомпилиться очень трудно, в нём то и возникают затыки. А изюминка этой проги в переименовании методов и объектов, то есть получаем не a b c и т.д. классы, с такими же методам, а вполне человечные читаемые вещи. А ребята тут притом, что это дело доробатывалось кучей людей с juga.ru комьюнити, они помогали wl в парсинге и т.д. на juga.ru в форуме это было отражено. |
| Автор: Vladimir35 22.1.2007, 22:30 | ||
Хм. Насколько мне известно декомпилирует все равно только яд. И если затык у яда возник, то хоть пиши на югу, хоть не пиши результат будет один - банан. (А товарищ Кузнецов давно не откликается ни на какие емэйлы.) Кучей людей на юге? Не понял. Это какую вы кучу имеете ввиду? (Что-то я там никакой кучи не видел. Тем более альтруистов.) И в эбауте нет ни слова ни про какую кучу. И что вы хотите сказать, что писали все, а автор записывал и поставил свои копирайты? Людей, которые знают как написать, даже на юге, мало; а тех кто может написать - вообще единицы. По-моему, такие программы, как JavaDec, это заслуги одного[-двух] авторов, а никакой не "кучи", как вы выразились. Я, к сожалению, в то время за форумом юги не следил, и не знаю кто и что внес, но тем не менее не стал бы их ни в коем случае называть "кучей" (причем ни в каком смысле). И еще раз: знать как написать и написать - это две разные вещи. |