Null Problem mit NeighboringCellInfo, CID und LAC

Für eine Weile habe ich versucht, CellID und LAC von nahe gelegenen Basisstationen zu bekommen. Leider habe ich das nicht geschafft. Die erste Option war:

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();

Aber in diesem Fall erhalte ich den Wert -1 (wie ich verstehe, bedeutet dies, dass es kein GSM ist, aber wenn ich mit isGSM überprüfe, wird "true" angezeigt). Ein anderer Weg, wie ich es gefunden habe, im Internet zu surfen (ich habe es ein bisschen aktualisiert)

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());  
 }  
}  
}

Aber in diesem Fall stürzt die Anwendung direkt nach dem Drücken der Ausführen-Taste ab. Eclipse zeigt keine Fehler. Hat vielleicht jemand eine Idee, wie ich meine Probleme beheben kann?

Logcat sagt: 10-05 22: 53: 27.923: ERROR / dalvikvm (231): Stack-Trace-Datei '/data/anr/traces.txt' kann nicht geöffnet werden: Berechtigung verweigert

Benutzte Berechtigungen:

<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" />

Möglicherweise ist das Problem, dass ich vergessen habe:

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

Aktualisieren. Ich habe eine Reihe von oben eingefügt, der Absturz ist weg, aber jetzt, nachdem ich den Knopf gedrückt habe, passiert nichts. Aktualisierter Quellcode.

Antworten auf die Frage(6)

Ihre Antwort auf die Frage