I have heard in many places that if my application uses a resolution that is not applicable to a specific device, it will not appear in the playback store for that device. Now, in my code, I play audio. I will mute this sound when there is a phone call by doing this:
private PhoneStateListener phoneStateListener = new PhoneStateListener() {
@Override
public void onCallStateChanged(int state, String incomingNumber) {
if (state == TelephonyManager.CALL_STATE_RINGING) {
onPhoneCallInterrupt();
} else if (state == TelephonyManager.CALL_STATE_IDLE) {
} else if (state == TelephonyManager.CALL_STATE_OFFHOOK) {
onPhoneCallInterrupt();
}
}
};
The manifest now uses the following permission:
<uses-feature android:name="android.permission.READ_PHONE_STATE" android:required="false" />
Will I get exceptions because I made the resolution optional by running android:required = "false"on devices that do not support phone compatibility (tablets)?
The reason I am so confused about this is because I am checking if the phone is being used, but I am not using it. So, will my application work on tablets, not to mention the appearance in the store for them?
, ,
Ruchir