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

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

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

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

Ответ
 
Опции темы
Старый 22.10.2006, 01:13   #16
Piligrim
Оптимист
 
Регистрация: 07.01.2006
Сообщений: 961
Написано 105 полезных сообщений
(для 259 пользователей)
Re: отправить смс на короткий номер 10625

Permissions для того и пишутся чтобы телефон знал, что мидлет хочет СМС отправлять. Но вообще-то по умному он должен спросить если нет разрешения.
Бибилотека и так написана по принципу "отправляй что хочешь". Дело в том что по стандарту номер должен быть в международном формате, видимо здесь ява машина мудрит.
(Offline)
 
Ответить с цитированием
Старый 22.10.2006, 01:54   #17
Chip
ПроЭктировщик
 
Регистрация: 20.10.2006
Сообщений: 102
Написано одно полезное сообщение
Re: отправить смс на короткий номер 10625

Сообщение от pilgrim
Permissions для того и пишутся чтобы телефон знал, что мидлет хочет СМС отправлять. Но вообще-то по умному он должен спросить если нет разрешения.
Бибилотека и так написана по принципу "отправляй что хочешь". Дело в том что по стандарту номер должен быть в международном формате, видимо здесь ява машина мудрит.
Дело в том что он пытается предложить отправить СМС, но так быстро вылетает что даже неуспеваешь согласится. Пробовал на другом телефоне так там просто слетает и даже ни чего не предлагает. А через стандартные средства на voxtel 3iD все работает , а с твоим классом нет. А может у SE свои классы для работы с СМС?
Декомпилировал классы твой и стандартный для сравнения , заметил что у тебя порт не пишется
"destination = s + ":276"; " это из стандартного класса строка выдернута.
Писал вот так:
if sms.send('sms://1010','Всем привет') <> 1 then halt;
while is_sending = 1 do delay(100);
if Successfull = 0 then halt;
(Offline)
 
Ответить с цитированием
Старый 22.10.2006, 10:04   #18
Piligrim
Оптимист
 
Регистрация: 07.01.2006
Сообщений: 961
Написано 105 полезных сообщений
(для 259 пользователей)
Re: отправить смс на короткий номер 10625

порт убран, т.к. у человека, для которого это писалось не отправлялись смс, его оператор этот порт не обслуживал.
можно обложить отправку try{}catch и посмотреть почему вылетает.
на моей мотороле он просто не отправляет, без вылета из программы.
(Offline)
 
Ответить с цитированием
Старый 22.10.2006, 14:04   #19
Chip
ПроЭктировщик
 
Регистрация: 20.10.2006
Сообщений: 102
Написано одно полезное сообщение
Re: отправить смс на короткий номер 10625

Все равно не пашет .
(Offline)
 
Ответить с цитированием
Старый 22.10.2006, 15:14   #20
Chip
ПроЭктировщик
 
Регистрация: 20.10.2006
Сообщений: 102
Написано одно полезное сообщение
Re: отправить смс на короткий номер 10625

Pilgrim помоги сделать класс SMS полностью идентичным стандартному, мне нужно избавится от строки: MIDlet-Permissions: javax.wireless.messaging.sms.send в файле MANIFEST.MF , все из-за нее , если я ее удаляю тел запускается без проблем.
Для редактирования выкладываю тебе класс :

import javax.microedition.io.*;
import javax.wireless.messaging.MessageConnection;
import javax.wireless.messaging.TextMessage;

class Lib_sms implements Runnable {
public static boolean isSending = false;
public static int success = 0;
private String destination;
private String message;
public static int send(String s, String s1)
{
if(isSending)
{
return 0;
} else
{
new Lib_sms(s, s1);
return -1;
}
}

public Lib_sms(String s, String s1)
{
success = 0;
isSending = true;
destination = s + ":276";
message = s1;
try
{
Thread thread = new Thread(this);
thread.start();
}
catch(Exception exception) {
isSending = false;
}
}

public void run()
{
try
{
MessageConnection messageconnection = (MessageConnection)Connector.open(destination);
TextMessage textmessage = (TextMessage)messageconnection.newMessage("text");
textmessage.setAddress(destination);
textmessage.setPayloadText(message);
messageconnection.send(textmessage);
messageconnection.close();
isSending = false;
success = -1;
return;
} catch(Throwable throwable) { }
try
{
DatagramConnection datagramconnection = (DatagramConnection)Connector.open(destination);
Datagram datagram = datagramconnection.newDatagram(message.getBytes(), message.getBytes().length, destination);
datagramconnection.send(datagram);
datagramconnection.close();
isSending = false;
success = -1;
}
catch(Throwable throwable1)
{
isSending = false;
success = 0;
return;
}
isSending = false;
success = -1;
}

public static int IS()
{
return !isSending ? 0 : -1;
}

public static int GS()
{
return success;
}
}
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Lib_call - Телефонный звонок на номер odd Библиотеки 23 15.11.2011 15:08
Что лучше - красивый icq номер или деньги Данил Болтовня 44 26.02.2009 11:34
Как взять номер из телефонной книги ? jkeks Основной форум 12 03.03.2008 19:06
Отправка сообщений на короткий номер dermeg Основной форум 5 08.09.2006 01:20


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


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