alb*_*tor 5 java android gsm cellid signal-strength
目前,我正在使用网络中的单元格来实现我的Android.它比我想象的还要准确.但不如我想要的那么准确.所以我想要涉及比getNeighboringCellInfo更多的塔.我想得到每个塔的范围内的Cell ID和信号强度.每个网络运营商.有没有办法"ping"塔,所以他们用cellID,Lac和signalstrength回答?不知怎的,这必须是可能的.我可以扫描2G和3G(和4G)并行吗?或者我可以以编程方式在它们之间切换?有什么建议?希望我足够清楚......
似乎TelephonyManager并且getNeighboringCellInfo()正是您正在寻找的。
这是一个简单而直接的示例:
/* first you wanna get a telephony manager by asking the system service */
TelephonyManager tm = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
/* then you can query for all the neighborhood cells */
List<NeighboringCellInfo> neighbors = tm.getNeighboringCellInfo();
/* here's something you can get from NeighboringCellInfo */
for (NeighboringCellInfo n : neighbors) {
Log.v("CellInfo", "" + n.getCid());
Log.v("CellInfo", "" + n.getLac());
Log.v("CellInfo", "" + n.getPsc());
Log.v("CellInfo", "" + n.getRssi());
}
Run Code Online (Sandbox Code Playgroud)
确保在清单文件中包含所需的所有权限,例如ACCESS_COARSE_LOCATION或READ_PHONE_STATE,具体取决于您将使用的 API,否则它会崩溃。
哦,顺便说一句,这只适用于 2G。3G及以上不支持此类操作。
| 归档时间: |
|
| 查看次数: |
4929 次 |
| 最近记录: |