Arkadaşlar merhaba, internette bayağı bir araştırma yapmama rağmen doğru düzgün çalışan bir kod veya ders bulamadım. Gelen aramayı reddetmek istiyorum. Nasıl yapabilirim? Önerebileceğiniz ders veya kütüphane var mı?
MODIFY_PHONE_STATE izni sadece sistem uygulamalarına veriliyor bunun dışında bir şey kullanamaz mıyım?
Ali Karakavak
A
Gelen aramayı istediğiniz gibi reddedersiniz bununla alakalı size yardımcı olabilirim su an çalışıyorum akşam eve gidince arşivim e bakicam
Teşekkürler şimdiden
ali Hocam burayı bir inceleyin isterseniz, http://stackoverflow.com/questions/15012082/rejecting-incoming-call-in-android
Oraya direkt olarak baktim denedim sdk 16 da saglam 23 te calismiyo. 22 de de denedim 5 telefondan sadece en eski olanda calisti.
minSdk'yı kasdediyorsunuz değilmi ?
maximum 16 da çalışyıor.
minSdk'nız kaç ?
16 idi sonra 19 yaptım bazı kodlardan dolayı.
Sadece gelen aramayı otomatik kabul edemezsiniz bunun için root yada sistem olmalisiniz
Otomatik olarak değil. HandyCall tarzında bir şey düşünün sadece onun nasıl yapıldığını merak ediyorum.
Size clsss olarak ITelephoyn lazım bütün functionlar onun içinde var handycall nasıl onu bilmiyorum
Açıkçası onu yaptım. ITelephony diye bir class oluşturdum olmadı. Yani pek çok şey denedim en son buraya yazmaya karar verdim Handycall Google Play'de bir uygulama. İndirip inceleyebilirsiniz.
String serviceManagerName = "android. Os. ServiceManager"; String serviceManagerNativeName = "android. Os. ServiceManagerNative"; String telephonyName = "com. Android. İnternal. Telephony. ITelephony"; Class telephonyClass; Class telephonyStubClass; Class serviceManagerClass; Class serviceManagerNativeClass; Method telephonyEndCall; Object telephonyObject; Object serviceManagerObject; telephonyClass = Class. ForName(telephonyName); telephonyStubClass = telephonyClass. GetClasses()[0]; serviceManagerClass = Class. ForName(serviceManagerName); serviceManagerNativeClass = Class. ForName(serviceManagerNativeName); Method getService = serviceManagerClass. GetMethod("getService", String. Class); Method tempInterfaceMethod = serviceManagerNativeClass. GetMethod( "asInterface", IBinder. Class); Binder tmpBinder = new Binder(); tmpBinder. AttachInterface(null, "fake"); serviceManagerObject = tempInterfaceMethod. İnvoke(null, tmpBinder); IBinder retbinder = (IBinder) getService. İnvoke( serviceManagerObject, "phone"); Method serviceMethod = telephonyStubClass. GetMethod("asInterface", IBinder. Class); telephonyObject = serviceMethod. İnvoke(null, retbinder); telephonyEndCall = telephonyClass. GetMethod("endCall"); telephonyEndCall. İnvoke(telephonyObject);
bu kodlarla kendi projemde minSDK 8 TargetSDK 23 olacak şekilde android nougat 7.0 üzerinde test ettim gayet başarılı isterseniz bir deneyin