Android :: Telephony Manager & Phone State Listener
Sep 7, 2010
I would like to know what are the main differences between TelephonyManager and PhoneStateListener, because you can do (more or less) the same things with both. For example, you could create an incoming calls register implementing a broadcastreceiver and using TelephonyManger API or extending PhoneStateListener class and registering this new listener throughTelephonyManager . Case 1 - BroadcastReceiver (TelephonyManager)
View 13 Replies
Feb 8, 2009
I'm a little confused by what I'm seeing with regards to phone state transitions via the PhoneStateListener. When I receive a call, this is what happens: (call comes in) RINGING -> IDLE (I pick up) OFFHOOK (I hang up) IDLE It's that first transition from RINGING to IDLE without any interaction from me (not ending the call, not answering the call) that confuses me. Do I really have to implement an idle counter to know that an incoming call has really ended? Seems like the reported phone state represents some sort of phone state that isn't the obvious one.Is this a bug or am I just not in tune with the paradigm here?
View 2 Replies
View Related
Sep 8, 2009
There appears to be a leak when using PhoneStateListeners. The following code simply reigsters in onResume and unregisters in onPause a PhoneStateListener. Repeatedly launch then press BACK (so the app is finished & onDestory is called before the next launch) and the number of activities reported by meminfo will equal the number of launches. For instance, here is the output I get after launching (and finishing) 11 times in sequence:
dumpsys meminfo com.example.leak Currently running services: meminfo
DUMP OF SERVICE meminfo: Applications Memory Usage (kB): Uptime: 12204322 Realtime: 12204322
** MEMINFO in pid 1358 [com.example.leak] ** native dalvik other total size:
2648 3079 N/A 5727
allocated: 2604 2254 N/A 4858
free: 43 825 N/A 868
(Pss): 913 1305 1475 3693
(shared dirty): 1080 3864 568 5512
(priv dirty): 808 936 1056 2800
Objects Views: 77
ViewRoots: AppContexts: 12
Activities: 11
Assets: 2
AssetManagers: 2
Local Binders: 36
Proxy Binders: 21
Death Recipients: 0
OpenSSL Sockets: 0
SQL heap: 0
dbFiles: 0
numPagers: 0
inactivePageKB: 0
activePageKB: 0 #
Without the PhoneStateListener, the number of activities is always 1 no matter how many times the app is launched & finished. So, am I doing anything wrong here? Or is this a bug in the TelephonyManager?
Here's the code package com.example.leak;
import android.app.Activity; import android.content.Context; import android.os.Bundle; import android.telephony.PhoneStateListener; import android.telephony.TelephonyManager; import android.util.Log;
public class LeakExample extends Activity {
private class MyPhoneStateListener extends PhoneStateListener {
@Override public void onCallStateChanged(int state, String incomingNumber) {
if ((state == TelephonyManager.CALL_STATE_RINGING)
|| (state == TelephonyManager.CALL_STATE_OFFHOOK)) {
LeakExample.this.finish();
} } }
MyPhoneStateListener phone_listener = new MyPhoneStateListener();
TelephonyManager telMgr ;
@Override public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
telMgr = (TelephonyManager) getSystemService (Context.TELEPHONY_SERVICE);
} @Override protected void onPause() { super.onPause();
telMgr.listen(phone_listener, PhoneStateListener.LISTEN_NONE);
} @Override protected void onResume() { super.onResume();
telMgr.listen(phone_listener, PhoneStateListener.LISTEN_CALL_STATE);
} @Override protected void onDestroy() { super.onDestroy();
Log.v("LEAK EXAMPLE", "onDestory");
}
View 3 Replies
View Related
Mar 19, 2010
I have built an application that listen to call state changes, and I want to notify a service when the call_state became IDLE.All the components I have are functional, I just need to notify (not start) a service for this.What's the correct practice, maybe using AIDL? Because, in a PhoneStateListener, I can't bind to a service. Do I have to start an activity for that?
View 2 Replies
View Related
Nov 11, 2009
I have a BroadcastReceiver that listens for the BOOT_COMPLETED, that part works I know because I disabled my phone listener and displayed a Toast within. That BroadcastReceiver is supposed to start a service, that also works. I run into Force Close issues when my service attempts to tell my TelephonyManager to listen. Any one have any ideas? Here is my code StartSeviceAtStartUp.java import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent;
View 3 Replies
View Related
Nov 17, 2009
i've registered a PhoneStateListener in BOOT_COMPLETED receiver by using following call: tm.listen(new TestCallStateListener(), PhoneStateListener. LISTEN_ CALL _STATE); If the application crashes then system automatically unregisters the PhoneStateListener. Is there any mechanism of checking if particular PhoneStateLister is registered or not? Actually i'm thinking of starting a repeating service by AlarmManager which will check if PhoneStateListener is registered or not . And if it's not registered then service will register it again. Just a backup if application crashes. Is this a good approach or there is some better mechanism to make sure that PhoneStateListener is always registered even if application crashes ?
View 2 Replies
View Related
Jan 21, 2010
My application process incoming/outgoing calls and shows some UI. So I use PhoneState Listener to listen changes such as CALL_STATE_IDLE , CALL_STATE_RINGING ,CALL_ STATE_ OFFHOOK. on receiving call to my BroacastReceiver for incoming/outgoing call. Most of the time things work properly. But sometimes my application does not receive events of Phone State Listener and hence it is not able to change/clear UI.From user feedback this typically occurs on HTC Hero. But I have came across this issue sometime on other devices also.My first guess is that android is killing my application in midway during call due to memory requirement. If so, is there any way to ensure that android does not my kill application under such situation .
View 1 Replies
View Related
May 29, 2009
I have low expectations that this message will get any response as it seems that Google developers do not like to address issues too close to the Android core and to strategic mobility applications. However, as they say, hope is the last to die.
I am really puzzled by the lack of response to queries about issues with some TelephonyManager functions.
Specifically, there have been a number of requests in the past, including mine, about
getNeighboringCellInfo()
As per the link below, getNeighboringCellInfo() is a documented TelephonyManager function available to application developers.
http://developer.android.com/reference/android/telephony/TelephonyMan...()
Yet, getNeighboringCellInfo() does not work. Any attempt to call it in an application results in application failure.
What is the problem here? If Google does not want application developers to use this function (I cannot fathom why that would be the case), then please remove it from TelephonyManager, and save all of us time and frustration.
It's really puzzling that for such an open platform Android has so many secrets and rules.
View 8 Replies
View Related
Sep 17, 2009
I am currently working on porting a application written in C in android platform. I need to know that can i invoke/call the getSystemService from the C application using invocation interface by JNI. Meaning using a .java file which will interact with the interace provided by the android.telephony.TelephonyManager.java for using getCallState() and other mehthods.
View 2 Replies
View Related
Apr 10, 2009
Is there a way to look up the user phone number other than TelephonyManager? In my G1, this returns null: // get your phone number TelephonyManager telephonyManager = (TelephonyManager) getSystem Service (Context. TELEPHONY_SERVICE); String tel = telephonyManager.getLine1Number(); Log.i("Telephone Number ==> ", tel+" <=="); Is there any other way of getting user's own phone number? take care, Muthu Ramadoss. http://linkedin.com /in/tellibitz http://androidrocks.googlecode.com - Android Consulting. Emo Philips <http://www.brainyquote.com /quotes/authors/e/emo_philips.html> - "A computer once beat me at chess, but it was no match for me at kick boxing."
View 7 Replies
View Related
Nov 9, 2010
I am not getting call in number in off_hook state when it is only coming in dialing state. According to documentation it should provide call in number for off_hook state as well. Is it a bug?
View 2 Replies
View Related
Jan 27, 2010
I am trying to get a phone object so that I can call and conference two numbers from within my application.
I have tried using the static PhoneFactory.makeDefaultPhones((Context)this) but have not had any luck.
CODE:.......
Error - Caused by java.lang.RuntimeException: PhoneFactory.getDefaultPhone must be called from Looper thread
View 3 Replies
View Related
Aug 11, 2010
I have a compound UI component built up from a ViewGroup containing a number of TextView, ImageView etc. components. Many of these have StateListDrawables as their images/backgrounds. Is there any way of making them select from this drawable based on the state of the parent ViewGroup rather than the component itself? Ideally I want to be able to change the visual state of all children of the ViewGroup (text colour, image etc) based on the state of the ViewGroup, preferably without having to hook up complex logical code. This seems like a fairly common sort of requirement, so I was hoping it would be straightforward in Android - am I going to be disappointed?
View 1 Replies
View Related
Nov 16, 2010
I have researched extensively and am pretty sure this is not possible. I want to make a call and then inject DTMF when the far end answers. So 2 questions Is it possible ?
If not, how do I work to get it on the list of upcoming features to be provided on Android. I can say that this is possible on BlackBerry and Symbian, so Android is falling behind in this regard.
View 2 Replies
View Related
Feb 11, 2009
I am using the Telephony class to get messages ( Telephony.Sms.Intents.getMessageFromIntent(Intent intent)). But I can't find the class Telephony from its package(android.provider), there is an error named "The import android.provider.Telephony cannot be resolved" when import android.provider.Telephony.Sms.Intents, the sdk version I'm using is android-sdk-windows-1.0_r2, how can I use this with the new implementation of Telephony?
View 2 Replies
View Related
Nov 2, 2010
There are a number of network types defined in TelephonyManager:
NETWORK_TYPE_GPRS
NETWORK_TYPE_EDGE
NETWORK_TYPE_UMTS
NETWORK_TYPE_CDMA
NETWORK_TYPE_EVDO_0
NETWORK_TYPE_EVDO_A
NETWORK_TYPE_1xRTT
NETWORK_TYPE_HSDPA
NETWORK_TYPE_HSUPA
NETWORK_TYPE_HSPA
Is there any info out there that describes what range of speeds you can expect on each of these? If that isn't available, it would be nice to be able to order them based on speed.
View 1 Replies
View Related
Mar 29, 2010
I was wondering if there is a way to manipulate the emulator to simulate telephony signal strength changes.
I would like to test code that uses TelephonyManager.listen() with LISTEN_SIGNAL_STRENGTHS.
View 2 Replies
View Related
Aug 30, 2010
I am writing an app where I get all the data from the rest call and display all the data in a custom component list(based on Linear Layout) which is added to a LinearLayout. I write this code in onCreate of the activity. The problem is when I switch activity using startActivity, and come back to the calling activity (using startActivity) then onCreate is called again. I see onPause, onStop called when I call other activity. Is there any way that I can save the application's state?
View 1 Replies
View Related
Jun 29, 2010
I was just working on an application that will do stuff when a call is missed or made; and am left wondering why do you have to register a listener using a long lived background service for phone state changes instead of being able to use broadcast intents?
View 2 Replies
View Related
Feb 27, 2010
For applications that set the android.permission.READ_PHONE_STATE permission. What is meant by "identity" in the permission description "read phone state and identity"? Users ask about this and we don't know what to tell them...
View 5 Replies
View Related
Oct 14, 2009
I can see that we can get a phonestate via the PhoneStateListener, but there is no way of telling the state of the call. OFFHOOK is a number of states combined into one. Is there a particular reason for this? Are we not allowed to see the correct state of a call?
View 2 Replies
View Related
May 20, 2010
I noticed in the class TelephonyManager there are CALL_STATE_IDLE, CALL_STATE_OFFHOOK adn CALL_STATE_RINGING. They seem to be used for incoming calls.What I actually want to do is to be notified when an outgoing call is made, is received, or timed out. How to do that?
View 2 Replies
View Related
Jun 10, 2010
I'm writing an android application that maintains a lot of "state" data...some of it I can save in the form of onSaveInstanceState but some of it is just to complex to save in memory.
My problem is that sliding the phone open destroys/recreates the app, and I lose all my application state in the process. The same thing happens with the "back" button, but I overloaded that function on my way. Is there any way to overload the phone opening to prevent it from happening?
View 2 Replies
View Related
Mar 8, 2010
TelephonyManager.getNetworkType() returns one of the constant values.It appears that the constant values have an integer order, by possible bearer link speed.I know using constant values used in the following manner is generally bad,however could one use this to determine a basic cutoff for application functionality and have it work between API levels? (in API-v1 there was nothing above 0x03)if( telephonyManager.getNetworkType() > TelephonyManager.NETWORK_TYPE_EDGE ) return "3G! party on!";else if( telephonyManager.getNetworkType() > TelephonyManager.NETWORK_TYPE_UNKNOWN )}
View 1 Replies
View Related
Apr 20, 2010
I was trying to root my samsng behold 2 earlier today using the command codes on theunlockr.com. I thought everything was going well as I went all the way to the last step where it rebooted my behold 2. Problem is, the phone kinda just turned off after doing the reboot command and didn't turn back on by itself (I gave it like 10 minutes). I eventually then just turned on the phone manually and noticed that everything was super laggy. Even when I used taskkiller to kill every task minus GDE, it said I only had 38MB ram available. I rebooted my phone a few times and it was laggy everytime so I decided to do a hard reset. The problem is that when I attempted the hard-reset, it will now get stuck on the samsung screen when trying to load up (stayed there for over 30 minutes). I can still enter the phone if I just start it up regularly without trying to hard-reset, but it will continue to be VERY laggy.
Is there anything I can do to restore this phone back to its original state? I was reading about using ODIN to flash it or something, but for some reason my computer doesn't detect my phone when I go into Download mode on startup (it does however detect the usb drivers on my phone once the phone officially startsup into its homepage).
View 7 Replies
View Related
Dec 6, 2009
Anyone know what providing an application access to "Phone calls: read phone state and identity" actually does?
View 5 Replies
View Related
Nov 17, 2010
I am trying to save some values in the onSaveInstanceState(Bundle) method of my activty by following the example here: How do I save an Android application's state?
But it doesnt seem to load it from the Oncreate(). the bundle object is always null but whenever i call another activity, it does indeed go into the onSaveInstanceState method to save my values.
Now i read that question i just posted and someone noted how they could not get it to work in an emulator? unfortunately that is all im working on. On an emulator and cant test the app on the device as i have no device available to me right now And the web services i am interacting with are in a local VM on my work machine that cannot be accesses remotely at the moment.
My question is, is it true that saved bundles dont work on emulators? I also noticed how when i do dismiss or bring up a new activity , the activity calles onPause and then onStop. when i bring back the same activty, it goes straight to onCreate?
now according to the docs here http://developer.android.com/guide/topics/fundamentals.html#actlife That is correct in terms of what the lifecycle diagram shows but if you read below that diagram on the onStop() section it says the next step it goes into is either onRestart() or onDestroy()? no mention of onCreate? Type on the docs?
Anyways here is my onSaveInstanceState() and onCreate() both in the same activity: code...
View 1 Replies
View Related
Apr 18, 2010
I have a simple app with a surfaceview nothing special one would say. However when installing on my phone I get two warnings.
1 - Phone calls
- read phone state and identity
2 - Storage
- modify/delete SD card content.
My really is nothing more than a simple puzzle and I dont understand why I get these warnings.
View 2 Replies
View Related
Apr 8, 2010
I'm programing Instrumentation Tests for SIM ToolKit (STK)
I need to use CommandsInterface which is available only in PhoneBase Interface. Once I have a Phone i'd like to use the following line:
CODE:.......
It compiled successfully, however gives uncaught exception (group=0x4001b188)
View 2 Replies
View Related
Oct 12, 2010
If you root your evo can you reset it later back to factory state.
View 1 Replies
View Related