我只想在 j2me 中使用手机信号塔查找位置名称。
另外,如何将来电重定向到我们自己的应用程序,从那里向用户显示来电号码,就像正常的呼叫信息一样?
[截至目前,当有人打电话给某人时,会显示手机号码,]
我想用他/她的手机号码向来电者显示来电者的位置。
此小区信息由小区信号塔作为 CBS(小区广播服务)消息进行广播,并由大多数服务提供商在某个预定义频道(通常为 050)上连接到该信号塔的所有 GSM 手机接收。因此,我们的 Java ME 应用程序可以使用 Push Registry 监听此 CBS 频道并捕获此信息。
按照步骤,
导入库
import javax.wireless.messaging.*;
import javax.microedition.io.PushRegistry;
注册您的 Midlet 以侦听 CBS 端口 50 并设置消息侦听器
public void setupListening()
{
try{
PushRegistry.registerConnection("cbs://:50",this.getClass().getName(),"*");
}catch(Exception e){}
String[] connList;
connList = PushRegistry.listConnections(true);
if((connList == null) || (connList.length == 0))
{
// You can exit the app, if you want
}
else
{
try{
msgconn = (MessageConnection)Connector.open("cbs://:50");
msgconn.setMessageListener(this);
} catch( IOException e){ e.printStackTrace();}
}
}
检索 CBS 消息有效负载。
public void notifyIncomingMessage(MessageConnection conn)
{
try{
txtmsg =(TextMessage)msgconn.receive();
}catch(Exception e){System.out.println(e);}
from = txtmsg.getAddress());
Msg = txtmsg.getPayloadText();
// Display from & Msg
}
我只想在 j2me 中使用手机信号塔查找位置名称。
当设备不处于 3G 模式时,@Lucifer 的方法会在某些网络上向您显示您自己当前的 Cell ID 信息。
另外,如何将来电重定向到我们自己的应用程序,从那里向用户显示来电号码,就像正常的呼叫信息一样?
[截至目前,当有人打电话给某人时,会显示手机号码,]
在 J2ME 中是不可能的。
我想用他/她的手机号码向来电者显示来电者的位置。
根本不可能!您的手机 ID 指的是您的位置,而不是呼叫者的位置。即使有一种将来电信息路由到 J2ME 应用程序的方法,您也只能显示国家信息(例如,以 +44 开头的号码肯定是英国),如果该号码是固定电话,则有些高级位置信息(例如,以+441234 开头的数字是英国贝德福德)。