Search...
FAQs
Subscribe
Pie
FAQs
Recent topics
Flagged topics
Hot topics
Best topics
Search...
Search within Android
Search Coderanch
Advance search
Google search
Register / Login
Post Reply
Bookmark Topic
Watch Topic
New Topic
programming forums
Java
Mobile
Certification
Databases
Caching
Books
Engineering
Micro Controllers
OS
Languages
Paradigms
IDEs
Build Tools
Frameworks
Application Servers
Open Source
This Site
Careers
Other
Pie Elite
all forums
this forum made possible by our volunteer staff, including ...
Marshals:
Campbell Ritchie
Tim Cooke
paul wheaton
Jeanne Boyarsky
Ron McLeod
Sheriffs:
Paul Clapham
Liutauras Vilda
Devaka Cooray
Saloon Keepers:
Tim Holloway
Roland Mueller
Bartenders:
Forum:
Android
telephonyManager.getCellLocation() gives null
shawn peter
Ranch Hand
Posts: 1325
1
posted 13 years ago
Number of slices to send:
Optional 'thank-you' note:
Send
This is my main class
package com.TelephonyManager.home; import org.apache.http.HttpResponse; import org.apache.http.client.HttpClient; import org.apache.http.client.methods.HttpGet; import org.apache.http.impl.client.DefaultHttpClient; import org.apache.http.util.EntityUtils; import android.app.Activity; import android.content.Context; import android.os.Bundle; import android.telephony.TelephonyManager; import android.telephony.gsm.GsmCellLocation; import android.widget.TextView; public class AndroidTelephonyManager extends Activity { public class OpenCellID { String mcc; //Mobile Country Code String mnc; //mobile network code String cellid; //Cell ID String lac; //Location Area Code Boolean error; String strURLSent; String GetOpenCellID_fullresult; String latitude; String longitude; public Boolean isError(){ return error; } public void setMcc(String value){ mcc = value; } public void setMnc(String value){ mnc = value; } public void setCallID(int value){ cellid = String.valueOf(value); } public void setCallLac(int value){ lac = String.valueOf(value); } public String getLocation(){ return(latitude + " : " + longitude); } public void groupURLSent(){ strURLSent = "http://www.opencellid.org/cell/get?mcc=" + mcc +"&mnc=" + mnc +"&cellid=" + cellid +"&lac=" + lac +"&fmt=txt"; } public String getstrURLSent(){ return strURLSent; } public String getGetOpenCellID_fullresult(){ return GetOpenCellID_fullresult; } public void GetOpenCellID() throws Exception { groupURLSent(); HttpClient client = new DefaultHttpClient(); HttpGet request = new HttpGet(strURLSent); HttpResponse response = client.execute(request); GetOpenCellID_fullresult = EntityUtils.toString(response.getEntity()); spliteResult(); } private void spliteResult(){ if(GetOpenCellID_fullresult.equalsIgnoreCase("err")){ error = true; }else{ error = false; String[] tResult = GetOpenCellID_fullresult.split(","); latitude = tResult[0]; longitude = tResult[1]; } } } int myLatitude, myLongitude; OpenCellID openCellID; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); TextView textGsmCellLocation = (TextView)findViewById(R.id.gsmcelllocation); TextView textMCC = (TextView)findViewById(R.id.mcc); TextView textMNC = (TextView)findViewById(R.id.mnc); TextView textCID = (TextView)findViewById(R.id.cid); TextView textLAC = (TextView)findViewById(R.id.lac); TextView textGeo = (TextView)findViewById(R.id.geo); TextView textRemark = (TextView)findViewById(R.id.remark); //retrieve a reference to an instance of TelephonyManager TelephonyManager telephonyManager = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE); GsmCellLocation cellLocation = (GsmCellLocation)telephonyManager.getCellLocation(); String networkOperator = telephonyManager.getNetworkOperator(); String mcc = networkOperator.substring(0, 3); String mnc = networkOperator.substring(3); textMCC.setText("mcc: " + mcc); textMNC.setText("mnc: " + mnc); int cid = cellLocation.getCid(); int lac = cellLocation.getLac(); textGsmCellLocation.setText(cellLocation.toString()); textCID.setText("gsm cell id: " + String.valueOf(cid)); textLAC.setText("gsm location area code: " + String.valueOf(lac)); openCellID = new OpenCellID(); openCellID.setMcc(mcc); openCellID.setMnc(mnc); openCellID.setCallID(cid); openCellID.setCallLac(lac); try { openCellID.GetOpenCellID(); if(!openCellID.isError()){ textGeo.setText(openCellID.getLocation()); textRemark.setText( "\n\n" + "URL sent: \n" + openCellID.getstrURLSent() + "\n\n" + "response: \n" + openCellID.GetOpenCellID_fullresult); }else{ textGeo.setText("Error"); } } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); textGeo.setText("Exception: " + e.toString()); } } }
this is my main xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/hello" /> <TextView android:id="@+id/gsmcelllocation" android:layout_width="fill_parent" android:layout_height="wrap_content" /> <TextView android:id="@+id/mcc" android:layout_width="fill_parent" android:layout_height="wrap_content" /> <TextView android:id="@+id/mnc" android:layout_width="fill_parent" android:layout_height="wrap_content" /> <TextView android:id="@+id/cid" android:layout_width="fill_parent" android:layout_height="wrap_content" /> <TextView android:id="@+id/lac" android:layout_width="fill_parent" android:layout_height="wrap_content" /> <TextView android:id="@+id/geo" android:layout_width="fill_parent" android:layout_height="wrap_content" /> <TextView android:id="@+id/remark" android:layout_width="fill_parent" android:layout_height="wrap_content" /> </LinearLayout>
this is manifest xml
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.TelephonyManager.home" android:versionCode="1" android:versionName="1.0"> <uses-sdk android:minSdkVersion="8" /> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"></uses-permission> <uses-permission android:name="android.permission.INTERNET"></uses-permission> <uses-permission android:name="android.permission.READ_PHONE_STATE"></uses-permission> <application android:icon="@drawable/icon" android:label="@string/app_name"> <activity android:name=".AndroidTelephonyManager" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>
but when i run this programm it gives me null.
below is exception
[2011-11-10 10:01:02 - ddms]null java.lang.NullPointerException at com.android.ddmlib.Client.read(Client.java:630) at com.android.ddmlib.MonitorThread.processClientActivity(MonitorThread.java:311) at com.android.ddmlib.MonitorThread.run(MonitorThread.java:263) [2011-11-10 10:01:02 - ddms]null java.lang.NullPointerException at com.android.ddmlib.Client.read(Client.java:630) at com.android.ddmlib.MonitorThread.processClientActivity(MonitorThread.java:311) at com.android.ddmlib.MonitorThread.run(MonitorThread.java:263)
when i debug the code telephonyManager.getCellLocation() gives me null.please see attachment.
tele.png
Where does a nanny get ground to air missles? Protect this tiny ad:
Smokeless wood heat with a rocket mass heater
https://woodheat.net
reply
reply
Bookmark Topic
Watch Topic
New Topic
Boost this thread!
Similar Threads
How to retrieve string from EditText?
it doesn't shows location details
url error ,please help
shows me blank with blinking arrow
android uncaught handler: thread main exiting due to uncaught exception
More...