当前位置: 首页 > 面试题库 >

NeighboringCellInfo,CID和LAC的空问题

毛博
2023-03-14
问题内容

有一段时间,我试图获取附近基站的CellID和LAC。不幸的是,我没有做到这一点。第一种选择是使用:

GsmCellLocation xXx = new GsmCellLocation();  
    CID = xXx.getCid();  
    LAC = xXx.getLac();  
    Toast output = Toast.makeText(getApplicationContext(), "Base station LAC is "+LAC+"\n" 
      +"Base station CID is " +CID, Toast.LENGTH_SHORT);  
    output.show();

但是在这种情况下,我收到-1值(据我了解,这意味着它不是GSM,但是当我使用isGSM进行检查时,它显示为“
true”)。我发现网上冲浪的另一种方式(我对其进行了一些更新)

public void GetID(){  
 List<NeighboringCellInfo>  neighCell = null; 
 TelephonyManager telManager = ( TelephonyManager )getSystemService(Context.TELEPHONY_SERVICE); 
 neighCell = telManager.getNeighboringCellInfo();  
 for (int i = 0; i < neighCell.size(); i++) {  
 try {  
   NeighboringCellInfo thisCell = neighCell.get(i);  
   int thisNeighCID = thisCell.getCid();  
   int thisNeighRSSI = thisCell.getRssi();  
   log(" "+thisNeighCID+" - "+thisNeighRSSI);  
 } catch (NumberFormatException e) {  
   e.printStackTrace();
   NeighboringCellInfo thisCell = neighCell.get(i);  
   log(neighCell.toString());  
 }  
}  
}

但是在这种情况下,我按下执行按钮后应用程序立即崩溃。Eclipse没有显示任何错误。可能有人对如何解决我的问题有任何想法?

Logcat说:10-05 22:53:27.923:错误/
dalvikvm(231):无法打开堆栈跟踪文件’/data/anr/traces.txt’:权限被拒绝

使用的权限:

<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.SEND_SMS"></uses-permission>
<uses-permission android:name="android.permission.RECEIVE_SMS"></uses-permission>
<uses-permission android:name="android.permission.ACCESS_COARSE_UPDATES" />

可能的问题是我忘了包括:

TelephonyManager telManager = ( TelephonyManager )getSystemService(Context.TELEPHONY_SERVICE);

更新。我从上方开始插入行,崩溃消失了,但是现在按下按钮后什么也没有发生。更新了源代码


问题答案:

您是否已验证清单文件中设置的权限是否正确?

TelephonyManager根据您使用的API
,需要一些权限。READ_PHONE_STATE除了getNeighboringCellInfo提及的文档外,您还需要大多数API
ACCESS_COARSE_UPDATES,但是我认为这可能是文档错误,您实际上需要将ACCESS_COARSE_LOCATION其记录为“允许应用程序访问粗略(例如,Cell-
ID,WiFi)位置”



 类似资料:
  • 在Android上使用CID、MNC、MCC、LAC是否有其他方法获得Lat Lon?

  • cid

    描述 (Description) 它是Backbone自动生成的客户端ID,因此可以在客户端上唯一标识模型。 语法 (Syntax) model.cid 例子 (Example) <!DOCTYPE html> <html> <head> <title> Model Example</title> <script src = "https://code.jquery

  • LAC

    中文词法分析(LAC) 中文分词(Word Segmentation)是将连续的自然语言文本,切分出具有语义合理性和完整性的词汇序列的过程。因为在汉语中,词是承担语义的最基本单位,切词是文本分类、情感分析、信息检索等众多自然语言处理任务的基础。 词性标注(Part-of-speech Tagging)是为自然语言文本中的每一个词汇赋予一个词性的过程,这里的词性包括名词、动词、形容词、副词等等。 命

  • 我正在做一个项目,在这个项目中,我必须使用移动塔跟踪位置。当sim2处于紧急状态时,它在电话管理器中发出空指针异常。我必须为这两个模拟人生获取LAC、CID、MCC和MNC。我可以使用SubscriptionManager获得MCC、MNC。但我如何才能为这两张sim卡获得LAC和MCC?

  • 问题内容: 我正在学习docker并且正在使用v1.11.0,我正在尝试安装hadoop,但是devmapper在抱怨可用磁盘空间? 我已删除所有图像,但问题仍然存在: 这是我的磁盘配置: 问题: 如何释放磁盘空间? 谢谢 问题答案: 您可以使用: 哪里: -a ==删除所有未使用的图像 -f ==力 --volumes ==修剪卷。 参见:https : //docs.docker.com/en

  • 问题:如何释放磁盘空间? 谢谢你