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

Java ME (J2ME)

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.83
moramar
0 / 0 / 0
Регистрация: 02.02.2013
Сообщений: 42
#1

Первый проект в JavaME - Java ME

09.04.2015, 21:33. Просмотров 1891. Ответов 9
Метки нет (Все метки)

Здравствуйте форумчане! Возникла проблема с которой, надеюсь, разберусь с вашей помощью! Было поставлено задание сделать один проект,из-за маленького недопонимания он был выполнен как программа на комп, а надо для звонилки. Дел со звонилками не имел, но сделать надо, поэтому приму любые ваши советы, обьяснения и прочее. Понятия не имею даже как скомпилить для Андроида(пока что во всяком случае), совсем новая тема...
Окошко.
Кликните здесь для просмотра всего текста
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
import java.awt.Dimension;
import java.awt.Toolkit;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
 
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
 
 
public class MainFrame {
 
    public static void main(String[] args) {
    SimpleFrame window = new SimpleFrame();
    
    }
}
class SimpleFrame extends JFrame{
    private String title = "Default Title";    
    private ImageIcon activebtn = new ImageIcon("Active.png");
    private ImageIcon passivebtn = new ImageIcon("Passive.png");
    private ImageIcon back = new ImageIcon("back2.jpg");
    private JLabel imgLabel=new JLabel(back);
    private JLabel imgBtnLabel=new JLabel(passivebtn);
    private JPanel panel = new JPanel();
    private JButton btn = new JButton();
    
    private void constructFrame(){
        setTitle(title);
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    setVisible(true);
    Dimension scrSize = Toolkit.getDefaultToolkit().getScreenSize();
    double width = scrSize.getWidth();
    double height=scrSize.getHeight();
    setResizable(true);
    this.add(panel);
    panel.setLayout(null);
    panel.add(imgBtnLabel);
    panel.add(imgLabel);    
    imgLabel.setBounds(0, 0,back.getIconWidth(),back.getIconHeight() ); 
    imgBtnLabel.setBounds(imgLabel.getWidth()/2-passivebtn.getIconWidth()/2 -6,
        imgLabel.getHeight()/2-passivebtn.getIconHeight()/2 -15,
        128,128);
    setSize(imgLabel.getWidth(),imgLabel.getHeight()+35);
    setLocation((int) width / 2 - getWidth() / 2, (int) height / 2 - getHeight() / 2);
    
    imgBtnLabel.addMouseListener(new MouseListener() {      
        @Override
        public void mouseReleased(MouseEvent arg0) {
        imgBtnLabel.setIcon(passivebtn);
        AClient client = new AClient();
        try {
            System.out.println(client.run());
        } catch (Exception e) {
            System.out.println("error "+e);
        }
        }       
        @Override
        public void mousePressed(MouseEvent arg0) {
        imgBtnLabel.setIcon(activebtn);     
        }       
        @Override
        public void mouseExited(MouseEvent arg0) {
        // TODO Auto-generated method stub      
        }       
        @Override
        public void mouseEntered(MouseEvent arg0) {
        // TODO Auto-generated method stub      
        }       
        @Override
        public void mouseClicked(MouseEvent arg0) {
        // TODO Auto-generated method stub      
        }
    });
    
    }
    
    
    SimpleFrame(){
    super();
    constructFrame();
    }
}

Код клиента
Кликните здесь для просмотра всего текста
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import java.io.*;
import java.net.*;
 
 
 
public class AClient {
 
    public String run()throws Exception{
    Socket sock = new Socket("localhost",444);
    PrintStream ps = new PrintStream(sock.getOutputStream());
    ps.println("Запускай!!!");
    
    InputStreamReader ir = new InputStreamReader(sock.getInputStream());
    BufferedReader reader = new BufferedReader(ir);
    
    String message = reader.readLine();
    //System.out.println(message);
    return message;
    }
}


Добавлено через 41 секунду
P.S. Звонилка - мобильный телефон. =)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.04.2015, 21:33     Первый проект в JavaME
Посмотрите здесь:

SOAP в JavaME, Поддерживает ли JavaME SOAP? - Java ME
Здравствуйте. Предлагают освоить создание ПО на JavaME, для первой проги вроде всё нормально по требованиям (хотя возможно для Windows CE...

Работа с файловой системой на JavaME - Java ME
Всем доброго времени суток! Необходимо работать с файловой системой телефона, это можно делать с помощью JSR-75 (других способов я не...

JavaME Servlet PrintWriter и BufferedReader - Java ME
Я не жуниор и не синиор, плохо разбираюсь в Java ME не судите строго. Мост установлен с MS ACCESS через Администратор данных ODBC, tomcat...

Реально ли программировать на javaME 8-битные контроллеры? - Java ME
Здравствуйте , все так хвалят java ! Вот я уже изучаю , но у меня в голове не укладывается subj.

Бесплатная IDE для программирования под JavaME - Java ME
Подскажите, пожалуйста, бесплатную IDE для программирования под JavaME, только что бы не очень требовательная была, ато у меня комп слабый,...

Приложение javaMe: созданные команды не назначаются на центральную кнопку - Java ME
Прошу прощения за возможно глупый вопрос. Недавно решил перенести на Samsung 5611 свое приложение, прежде работавшее на Nokia 3011, и...

Первый Проект с Базами - C++
Надо написать диплом, задание стоит так, написать программу на С++ с использованием баз данных. Программа типа учёт и списки студентов....

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MLPMan
Кандёхаем веселее!
282 / 276 / 34
Регистрация: 02.10.2012
Сообщений: 1,952
12.04.2015, 04:38     Первый проект в JavaME #2
Прогу предполагается запускать только на Андроидах, или на Java ME тоже? В любом случаи придётся переписывать, Андроид хоть и поддерживает Java SE, но кроме GUI (AWT/Swing), там какой-то свой подход.
moramar
0 / 0 / 0
Регистрация: 02.02.2013
Сообщений: 42
12.04.2015, 14:23  [ТС]     Первый проект в JavaME #3
Цитата Сообщение от MLPMan Посмотреть сообщение
но кроме GUI (AWT/Swing), там какой-то свой подход
Плохая новость. Я думаю что подразумевалось на JavaME тоже. Не могу понять сам процесс как запускать приложение на мобильном, есть код, что с ним дальше то делать?
И кому не сложно, подскажите чем заменить GUI от JSE, для JME.
MLPMan
Кандёхаем веселее!
282 / 276 / 34
Регистрация: 02.10.2012
Сообщений: 1,952
12.04.2015, 16:21     Первый проект в JavaME #4
Цитата Сообщение от moramar Посмотреть сообщение
Не могу понять сам процесс как запускать приложение на мобильном, есть код, что с ним дальше то делать?
Да как обычно, сконпелировать, собрать, но запускать уже на мобильном устройстве или эмуляторе. Проще всего скачать плагин для IDE, чтобы всё искаропки.

Цитата Сообщение от moramar Посмотреть сообщение
Я думаю что подразумевалось на JavaME тоже.
Тогда надо компилировать в мобильный .jar, он запускается на большинстве мобил, а для Андроида есть прога-интерпретатор (у них свой формат приложений, .apk). Кстати говоря, технологии уже ~15 лет, не особо востребована (судите сами, соотношение "активных"(тех, кто качает проги) юзеров смартфонов на ведре и обычных мобил), да и возможности API намного беднее будут: MIDP 2.0 javadocs. Привычных классов Java SE, вроде регулярных выражений там не окажется, не говоря уже о развитой рефлексии или API для XML, но для базовых вещей есть свои спартанские аналоги. И да, уровень языка тока 1.4 версии (то бишь даже без дженериков).

Цитата Сообщение от moramar Посмотреть сообщение
И кому не сложно, подскажите чем заменить GUI от JSE, для JME.
Что-то типа этого:

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
38
public class App extends MIDlet {
 
  Form frm = new Form("Default Title");
  Command formCmd = new Command("Do", Command.OK, 1);  
  
  final int MENU_ACT = 0, MENU_PASS = 1, MENU_EX = 2;
  List menu = new List("", List.IMPLICIT, new String[]{"Active","Passive","Exit"}, null);   
  Command menuCmd = new Command("Ok", Command.OK, 1);
    
    
  class Listener1 implements CommandListener {
    public void commandAction(Command c, Displayable d) {
      if (c == menuCmd) switch (menu.getSelectedIndex()) {
        case MENU_ACT : {}
        case MENU_PASS : {}
        case MENU_EX : {
          destroyApp(false);
          notifyDestroyed();
        }
      }
      if (c == formCmd) {
        disp.setCurrent(menu);
      }
    }
  }
 
  Display disp = Display.getDisplay(this);
 
  public void startApp()  {
    menu.addCommand(menuCmd);
    frm.addCommand(formCmd);
    CommandListener li = new Listener1() ;
    menu.addCommandListener(li);
    frm.addCommandListener(li);    
    disp.setCurrent(frm);    
  }
 
}
Добавлено через 14 минут
Выбрав Андроид, придётся переделывать только интерфейс, а JavaME - и логику тоже.
moramar
0 / 0 / 0
Регистрация: 02.02.2013
Сообщений: 42
12.04.2015, 16:29  [ТС]     Первый проект в JavaME #5
Цитата Сообщение от MLPMan Посмотреть сообщение
Проще всего скачать плагин для IDE, чтобы всё искаропки.
Пытаюсь для Eclipse найти. И да, вы правы, я протупил что-то, для Android надо написать, а не для всех(JME). Код ща попробую разобрать, но чет уже вижу не сходства))
MLPMan
Кандёхаем веселее!
282 / 276 / 34
Регистрация: 02.10.2012
Сообщений: 1,952
12.04.2015, 16:44     Первый проект в JavaME #6
Цитата Сообщение от moramar Посмотреть сообщение
Код ща попробую разобрать, но чет уже вижу не сходства))
Только он не для андроида, у них вроде вообще при помощи XML компоненты размещают.

Добавлено через 1 минуту
Цитата Сообщение от moramar Посмотреть сообщение
Пытаюсь для Eclipse найти.
Там сделали на основе Eclipse отдельную IDE, чисто для Андроидов. Не помню, как называется, но, думаю, легко отыщете.
moramar
0 / 0 / 0
Регистрация: 02.02.2013
Сообщений: 42
12.04.2015, 17:12  [ТС]     Первый проект в JavaME #7
Цитата Сообщение от MLPMan Посмотреть сообщение
чисто для Андроидов.
Случайно не Android Studio?
MLPMan
Кандёхаем веселее!
282 / 276 / 34
Регистрация: 02.10.2012
Сообщений: 1,952
12.04.2015, 17:33     Первый проект в JavaME #8
Цитата Сообщение от moramar Посмотреть сообщение
Случайно не Android Studio?
Наверное, но он на базе другой среды. Наверное, я что-то напутал, ща поcмотрел, для Eclipse только плагин есть.
moramar
0 / 0 / 0
Регистрация: 02.02.2013
Сообщений: 42
12.04.2015, 18:02  [ТС]     Первый проект в JavaME #9
Цитата Сообщение от MLPMan Посмотреть сообщение
для Eclipse только плагин есть.
Плагин этот скачал, и настроил, он позволяет создавать Android проекты в Eclipse, но они как я понимаю не на Java языке пишутся?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.04.2015, 18:15     Первый проект в JavaME
Еще ссылки по теме:

Первый проект СКС - Сети
Всем привет! На работе загрузили меня проектом СКС (сам проектировщик ОПС). Исходные данные: - здание А. Имеется уже заведенная...

Первый большой проект на Qt - C++ Qt
Здравствуйте. Я бы хотел попробовать свои силы на этом замечательном фреймворке. Планирую сделать такую программку: IQ тест. Вопросы и...

Первый проект и ошибка - Java SE
Подскажите, пожалуйста, как решить данную проблему?

Первый Arduino проект - Arduino
Доброго времени суток) На днях решил заняться Ардуино, заказал платы на али по совету знакомого. Подскажите, что интересного можно...

Первый проект на Zend Framework 2 (по документации) - PHP
Пытаюсь создать проект по документации: http://codepress.ru/учебник/zend-framework-2/установка-модуля.html ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
MLPMan
Кандёхаем веселее!
282 / 276 / 34
Регистрация: 02.10.2012
Сообщений: 1,952
12.04.2015, 18:15     Первый проект в JavaME #10
Цитата Сообщение от moramar Посмотреть сообщение
не на Java языке пишутся?
Почему, на ней. Только библиотеки другие.
Yandex
Объявления
12.04.2015, 18:15     Первый проект в JavaME
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru