/* Copyright (c) 2011, SaferMobile/MobileActive - https://safermobile.org */
/* See LICENSE for licensing information */
package org.safermobile.clear.micro.data;
//#ifndef RIM
/*
//#endif
import net.rim.device.api.system.GPRSInfo;
import net.rim.device.api.system.SIMCardInfo;
//#ifndef RIM
*/
//#endif
public class PhoneInfo {
/**
* get the cell id in the phone
*
* @return
*/
public static String getCellId(){
String out = "";
try{
out = System.getProperty("Cell-ID");
if(out== null || out.equals("null") || out.equals(""))
out = System.getProperty("CellID");
if(out== null ||out.equals("null")|| out.equals(""))
System.getProperty("phone.cid");
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("com.nokia.mid.cellid");
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("com.sonyericsson.net.cellid");
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("phone.cid");//System.getProperty("CellID");
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("com.samsung.cellid");
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("com.siemens.cellid");
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("cid");
//#ifndef RIM
/*
//#endif
//
if(out== null ||out.equals("null")|| out.equals(""))
out = Integer.toString(GPRSInfo.getCellInfo().getCellId());
//#ifndef RIM
*/
//#endif
}catch(Exception e){
return out==null?"":out;
}
return out==null?"":out;
}
/**
* get the lac sring from phone
*/
public static String getLAC(){
String out = "";
try{
out = System.getProperty("phone.lac");
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("com.nokia.mid.lac");
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("com.sonyericsson.net.lac");
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("LocAreaCode");
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("com.samsung.cellid");
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("com.siemens.cellid");
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("cid");
//#ifndef RIM
/*
//#endif
if(out== null ||out.equals("null")|| out.equals(""))
out = Integer.toString(GPRSInfo.getCellInfo().getLAC());
//#ifndef RIM
*/
//#endif
}catch(Exception e){
return out==null?"":out;
}
return out==null?"":out;
}
/**
* Example IMSI (O2 UK): 234103530089555
String mcc = imsi.substring(0,3); // 234 (UK)
String mnc = imsi.substring(3,5); // 10 (O2)
* @return
*/
public static String getIMSI(){
String out = "";
try{
out = System.getProperty("IMSI");
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("phone.imsi") ;
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("com.nokia.mid.mobinfo.IMSI");
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("com.nokia.mid.imsi");
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("com.sonyericsson.imsi");
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("IMSI");
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("com.samsung.imei");
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("com.siemens.imei");
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("imsi");
//#ifndef RIM
/*
//#endif
if(out== null ||out.equals("null")|| out.equals(""))
out = GPRSInfo.imeisvToString(SIMCardInfo.getIMSI(), false);
//#ifndef RIM
*/
//#endif
}catch(Exception e){
return out==null?"":out;
}
return out==null?"":out;
}
/**
*
* For moto, Example IMSI (O2 UK): 234103530089555
String mcc = imsi.substring(0,3); // 234 (UK)
* @return
*/
public static String getMCC(){
String out = "";
try{
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("phone.mcc") ;
if(out== null ||out.equals("null")|| out.equals(""))
//out = System.getProperty("com.nokia.mid.mobinfo.IMSI");
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("com.sonyericsson.net.mcc");
if(out== null ||out.equals("null")|| out.equals("")){
out = getIMSI().equals("")?"": getIMSI().substring(0,3);
}
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("com.samsung.imei");
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("com.siemens.imei");
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("mcc");
//#ifndef RIM
/*
//#endif
if(out== null ||out.equals("null")|| out.equals(""))
out = Integer.toString(GPRSInfo.getCellInfo().getMCC());
//#ifndef RIM
*/
//#endif
}catch(Exception e){
return out==null?"":out;
}
return out==null?"":out;
}
/**
*
* For moto, Example IMSI (O2 UK): 234103530089555
String mnc = imsi.substring(3,5); // 10 (O2)
* @return
*/
public static String getMNC(){
String out = "";
try{
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("phone.mnc") ;
if(out== null ||out.equals("null")|| out.equals(""))
out = getIMSI().equals("")?"": getIMSI().substring(3,5);
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("com.sonyericsson.net.mnc");
if(out== null ||out.equals("null")|| out.equals("")){
out = getIMSI().equals("")?"": getIMSI().substring(3,5);
}
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("com.samsung.imei");
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("com.siemens.imei");
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("mnc");
//#ifndef RIM
/*
//#endif
if(out== null ||out.equals("null")|| out.equals(""))
out = Integer.toString(GPRSInfo.getCellInfo().getMNC());
//#ifndef RIM
*/
//#endif
}catch(Exception e){
return out==null?"":out;
}
return out==null?"":out;
}
/**
* not used now
* get the IMEI (International Mobile Equipment Identity (IMEI)) in the phone
*
* @return
*/
public static String getIMEI(){
String out = "";
try{
out = System.getProperty("com.imei");
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("phone.imei");
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("com.nokia.IMEI");
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("com.nokia.mid.imei");
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("com.nokia.mid.imei");
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("com.sonyericsson.imei");
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("IMEI");
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("com.motorola.IMEI");
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("com.samsung.imei");
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("com.siemens.imei");
if(out== null ||out.equals("null")|| out.equals(""))
out = System.getProperty("imei");
//#ifndef RIM
/*
//#endif
if(out== null ||out.equals("null")|| out.equals(""))
out = GPRSInfo.imeiToString(GPRSInfo.getIMEI());
// #ifndef RIM
*/
//#endif
}catch(Exception e){
return out==null?"":out;
}
return out==null?"":out;
}
}