[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Как самому скомпилить аську на телефон
1ldarДата: Пятница, 17.02.2012, 00:17 | Сообщение # 1

Генерал-лейтенант
Сообщений: 611
Репутация: 14
Награды: 0
BL:


Как скомпилировать аську самому

способ I (классический)

"необходимый софт"
1 качаем Java Development Kit (JDK) комплект разработчика приложений на языке Java http://java.sun.com/...loads/index.jsp
2 качаем Wireless Toolkit Kit (WTK) java-эмулятор http://java.sun.com/...cts/sjwtoolkit/
3 качаем Apache Ant утилита для сборки программ из исходного кода http://ant.apache.org/
4 качаем Proguard обфускатор для уменьшения размера результирующего jar-файла http://proguard.sourceforge.net/
5 качаем TortoiseSVN приложение для работы с SVN http://tortoisesvn.net/downloads
1, 2 и 5 устанавливаем, 3 и 4 кладем в удобную для нас папку.
"подготовка исходников"
после того как все установили и положили делаем правый клик по «мой компьютер», в контекстном меню выбираем пункт «свойства», «дополнительно», «параметры среды», в «системные переменные» ищем переменную PATH (могут быть и такие названия path или Path), нажимаем «изменить», в «значение переменной» ставим точку с запятой ";" и дописываем путь к Apache Ant (до директории bin), сохраняем.
возможно так же понадобится положить ant-contrib.jar в папку lib Apache Ant'а, взять его можно прямо в исходниках (\util\ant-contrib\ant-contrib.jar)
создаем папку для исходников, даем ей имя и переходим в её. правый клик, в контекстном меню выбираем «SVN извлечь», в графе «URL в хранилище» вписываем http://jimm-fork.goo....com/svn/trunk/ больше ничего не меняем, жмем «ОК» и ждем конца извлечения.
в нашей папке появится папка jimm-fork, заходим в её, находим там файл build.xml, открываем его блокнотом и ищем следующие строки:
<property name="DEFAULT/midp" location="здесь пишем путь к нашему WTK" />
<property name="MIDP2/midp" location="здесь пишем путь к нашему WTK" />
<property name="RIM/midp" location="CHANGE ME" />
<property name="SIEMENS1/midp" location="CHANGE ME" />
<property name="SIEMENS2/midp" location="CHANGE ME" />
<property name="MOTOROLA/midp" location="CHANGE ME" />
чуть ниже ищем еще эти:
<property name="proguard" value="здесь пишем путь к нашему proguard" />
<property name="proguard/lib" value="${proguard}/lib/proguard.jar" />
идем в папку config (jimm-fork\config), отрываем там блокнотом файл sysdirs.properties и редактируем:
DEFAULT/midp= здесь пишем путь к нашему WTK
MIDP2/midp= здесь пишем путь к нашему WTK
RIM/midp=CHANGE ME
SIEMENS1/midp=CHANGE ME
SIEMENS2/midp=CHANGE ME
MOTOROLA/midp=CHANGE ME
чуть ниже ищем :
proguard=здесь пишем путь к нашему proguard
"возможно так же понадобиться"
-создать переменную JAVA_HOME, в системных переменных, в переменной прописать путь к JDK (просто к директории jdk, не к bin как в случае с ant'ом)
"сборка"
теперь возвращаемся к build.xml, левый клик на нем, «открыть с помощю», «выбрать программу», «обзор», идем в папку WINDOWS\system32 и ищем там cmd.exe им и ставим открыть, откроется консоль где уже будет прописан путь к нашей папке, пишем ant dist-all (команда для сборки) и ждем окончания процесса.
"пример build.xml с изменениями"
<property name="DEFAULT/midp" location=" C:/dev/WTK2.5.2" />
<property name="MIDP2/midp" location="C:/dev/WTK2.5.2" />
<property name="RIM/midp" location="CHANGE ME" />
<property name="SIEMENS1/midp" location="CHANGE ME" />
<property name="SIEMENS2/midp" location="CHANGE ME" />
<property name="MOTOROLA/midp" location="CHANGE ME" />

<property name="proguard" value=" C:/dev /proguard/" />
<property name="proguard/lib" value="${proguard}/lib/proguard4.4.jar" />
или можно так:
<property name="proguard" value="" />
<property name="proguard/lib" value="C:/dev /proguard/proguard4.4.jar" />
"пример sysdirs.properties с изменениями"
DEFAULT/midp= C:/dev/WTK2.5.2
MIDP2/midp= C:/dev/WTK2.5.2
RIM/midp=CHANGE ME
SIEMENS1/midp=CHANGE ME
SIEMENS2/midp=CHANGE ME
MOTOROLA/midp=CHANGE ME

proguard= C:/dev /proguard/proguard4.4.jar

способ II (героический) пытаться не советую, потому как для опытных пользователей IDE NetBeans, да еще придется решать проблему с языковыми файлами.

настройка бинса для работы с исходниками джим (тем кому интересно) (на примере MIDP2 сборки)
"необходимо иметь"
JDK, netbeans, netbeans mobility pack
"создание проекта"
в choose project выбираем
categorie: mobility
projects: mobile project from existing MIDP sources
sources location: папка исходников\src
jad manifest location: папка исходников\res\MANIFEST.MF
project name и project location любые (называем, допустим jimm, project location оставляем предложенные )
emulator platform: wireless toolkit 2.5.2 for CLDC
device: default color phone
device configuration: CLDC-1.0
device profile: MIDP-2.0
finish (если снизу пишет warning: platform does not support ###MIDP-PROFILE### нужно поправить манифест (MANIFEST.MF), хотя можно и потом или просто взять из готового джимм)
"настройка проекта"
правый клик по проекту и в самом низу пункт properties
general: оставить как есть
platform: создать профиль MIDP2 и оставлял галочки на file Connection and PIM optional packages 1.0, mobile media API 1.1, wireless messaging API 2.0
abilities:все что есть+modules_TRAFFIC, modules_HISTORY, modules_FILES, modules_SMILES, modules_PROXY, modules_XSTATUSES, modules_SERVERLISTS, modules_SOUND, modules_TRANSLITERATE, modules_CLIENTS, modules_MAGIC_EYE, modules_ANTISPAM, protocols_ICQ, protocols_JABBER, protocols_MRIM, SMILES_IN_XSTATUS с value (значением): true или false (нужен-true, не нужен-false), а так же device_configuration с value (значением): CLDC-1.0
compiling: галку на compile with optimization
libraries & resource: \res\TARGETS\MIDP2, хотя это толком не работает и лучше просто указать папку со звуками, графикой и нужными текстовиками (themes.txt, replaces.txt, smiles.txt).
"подготовка исходников"
заменить в исходниках (или просто добавить ниже) команды препроцессора (с существующих - на команды netbeans'а).
пример:
как сейчас // #sijapp cond.if modules_ANISMILES is "true" #
как надо //#if modules_ANISMILES=="true"
как сейчас // #sijapp cond.end #
как надо //#endif
как сейчас // #sijapp cond.if target isnot "MOTOROLA" #
как надо //#if !MOTOROLA
кое-что про команды препроцессора написано в справке netbeans (help/help contents/about preprocessor directives)
"проблемы данного метода"
проблема: файлы .lang не поддаются обфускации и введению в .jar архив в виде уже измененных в .lng файлы, скомпилированный проект лишен языковых файлов.
решение: хоть и плохое, но пока так: добавить в папку исходников (src) уже готовые .lng файлы (взять из готового джимм, иногда срабатывает, а иногда и нет).
"сборка"
правый клик по проекту, затем run, run with, debug если все правильно, появится эмулятор в котором нужно нажать launch (верхняя правая кнопка), запустится созданный джимм.
получившиеся .jar и .jad файлы будут лежать: \мои документы\netbeansprojects\jimm\dist\MIDP 2


 
SPAN4IKДата: Пятница, 17.02.2012, 00:21 | Сообщение # 2

Полковник
Сообщений: 228
Репутация: 6
Награды: 0
BL:


1ldar, а ссылки не полные biggrin
 
GuTДата: Пятница, 17.02.2012, 01:19 | Сообщение # 3

Сообщений: 31
Репутация: 303
Награды: 0
BL:


Красавчик!

 
1ldarДата: Пятница, 17.02.2012, 16:41 | Сообщение # 4

Генерал-лейтенант
Сообщений: 611
Репутация: 14
Награды: 0
BL:


Quote (SPAN4IK)
а ссылки не полные

я ссылки не проверял smile


 
  • Страница 1 из 1
  • 1
Поиск: