如何在J2ME中使用cell tower查找用户位置?

Jav*_*ons 3 java mobile java-me

我只想在j2me中使用cell tower找到位置名称.

另外,如何将来电重定向到我们自己的应用程序,从正常呼叫信息向用户显示呼叫者号码?

[截至目前,当有人打电话给某人时,会显示手机号码,]

我想用他/她的手机号码向呼叫接收者显示呼叫者的位置.

Luc*_*fer 5

该小区信息由小区塔广播为CBS(小区广播服务)消息,并且由大多数服务提供商在某些预定义信道(通常为050)上连接到该塔的所有GSM电话接收.因此,我们的Java ME应用程序可以使用Push Registry监听此CBS通道并捕获此信息.

按照步骤,

  1. 导入库

    import javax.wireless.messaging.*;
    import javax.microedition.io.PushRegistry;
    
    Run Code Online (Sandbox Code Playgroud)
  2. 注册您的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();}
         }
    }
    
    Run Code Online (Sandbox Code Playgroud)
  3. 检索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            
    }
    
    Run Code Online (Sandbox Code Playgroud)