aryana_b
شنبه 13 تیر 1394, 13:44 عصر
سلام دوستان
در قسمتی از برنامم میخوام اگه شماره خاصی تماس گرفت گوشی به حالت سایلنت بره و بعد از قطع شدن تماس به حالت قبلی برگرده
مشکلم اینه نمیدونم چطور باید بفهمم که تماس کی قطع شده
این کد مربوط به حالت سایلنت رفتن
@Override
public void onReceive(Context context, Intent intent) {
Log.v(TAG, "Receving....");
TelephonyManager telephony = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE );
try {
//am=(AudioManager)getSystemService(Context.AUDIO_SE RVICE);
am = (AudioManager)context.getSystemService(Context.AUD IO_SERVICE);
temp = (AudioManager)context.getSystemService(Context.AUD IO_SERVICE);
Class c = Class.forName(telephony.getClass().getName());
Method m = c.getDeclaredMethod("getITelephony");
m.setAccessible(true);
telephonyService = (ITelephony) m.invoke(telephony);
Bundle bundle=intent.getExtras();
String phoneNumber = bundle.getString("incoming_number");
if ((phoneNumber != null) && (phoneNumber.equals(silencenum))){
temp.getRingerMode();
am.setRingerMode(0);
//اینجا میخوام بعد از اینکه تماس قطع شد به حالت قبلی برگرده
}
} catch (Exception e) {
e.printStackTrace();
}
}
temp رو گذاشتم تا حالت قبلی تلفن از سایلنت شدن رو نگه داره
در قسمتی از برنامم میخوام اگه شماره خاصی تماس گرفت گوشی به حالت سایلنت بره و بعد از قطع شدن تماس به حالت قبلی برگرده
مشکلم اینه نمیدونم چطور باید بفهمم که تماس کی قطع شده
این کد مربوط به حالت سایلنت رفتن
@Override
public void onReceive(Context context, Intent intent) {
Log.v(TAG, "Receving....");
TelephonyManager telephony = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE );
try {
//am=(AudioManager)getSystemService(Context.AUDIO_SE RVICE);
am = (AudioManager)context.getSystemService(Context.AUD IO_SERVICE);
temp = (AudioManager)context.getSystemService(Context.AUD IO_SERVICE);
Class c = Class.forName(telephony.getClass().getName());
Method m = c.getDeclaredMethod("getITelephony");
m.setAccessible(true);
telephonyService = (ITelephony) m.invoke(telephony);
Bundle bundle=intent.getExtras();
String phoneNumber = bundle.getString("incoming_number");
if ((phoneNumber != null) && (phoneNumber.equals(silencenum))){
temp.getRingerMode();
am.setRingerMode(0);
//اینجا میخوام بعد از اینکه تماس قطع شد به حالت قبلی برگرده
}
} catch (Exception e) {
e.printStackTrace();
}
}
temp رو گذاشتم تا حالت قبلی تلفن از سایلنت شدن رو نگه داره