Tuesday, April 7, 2015
Block Calls
မေန႕က တင္ေပးခဲ႕တဲ႕ Example ကမိမိ လိုခ်င္တဲ႕ နံပါတ္ ၀င္လာရင္ Auto ဖုန္းကိုင္မယ့္ Auto Answer ပါ။ အခုကေတာ့ မႀကိဳက္တဲ႕ နံပါတ္၀င္လာရင္ Block လုပ္ေပးမဲ႕ Blocker ကို ေျပာသြားပါမယ္။ Call Block ဆိုတာ ဖုန္းမ၀င္လညေအာင္ တားေပးႏိုင္တာေတာ့ မဟုတ္ပါဘူး။ ၀င္လာတဲ႕ Call ကို Auto End လုပ္ပစ္မွာပါပဲ။ အခု မေန႕က ေပးထားတဲ႕ Auto Answer ထဲကေနပဲ ဆက္သြားပါမယ္။ အာ့ Example ထဲမွာ AutoAnswer ရဲ႕ Action ကို
Sub PE_PhoneStateChanged(-----------)
အ့ာေအာက္ကေန
If IncommingNumber = "09XXXX" then
ဆိုပီး ေအာက္က AutoAnswer ရဲ႕ Action ေတကို ေရးေပးထားတာ။ဒီေတာ့ ဒီ Ecample ကိုပဲ ျပန္ျပင္ပါမယ္။
Sun PE_PhoneStateChanged(State As . . . . )
If IncomingNumber = "09XXXXXX" Then
KillCall
End If
End Sub
ဒလို ျပန္ေရးလိုက္ပါမယ္။ ဆိုလိူတာက 09XXXXX ဆိုတဲ႕ နံပါတ္ ၀င္လာရင္ killCall ေပါ့ .
ဒါဆို KillCall က ဘယ္က လာမတုန္း ?
ဒါက KillCall အမည္နဲ႕ Event တခုကို လွမ္းေခၚပါ။ဒီေတာ့ KillCall Event ကိုေရးရပါမယ္။
ေအာက္မွာ ကြကိုယ္ Sub တခု ေရးထည့္ပါမယ္။
Sub KillCall
Dim r As Reflector
r.Target = r.GetContext
Dim TelephonyManager, TelephonyInterface As Object
TelephonyManager = r.RunMethod2("getSystemService", "phone", "java.lang.String")
r.Target = TelephonyManager
TelephonyInterface = r.RunMethod("getITelephony")
r.Target = TelephonyInterface
r.RunMethod("endCall")
End Sub
ဒီ Event ကို ကြကိုယ္ေရးထည့္ပါ။ ဒါသည္ EndCall အတြက္ Action ပါ။ သူ႕ကို ေရးဖို႕ Reflection lib လိုပါမယ္ မရွိရင္ေျပာပါ။
Toolbar က Project/ ManifestEditor ကိုဟဖြင့္ပီးး
AddPermission("android.permission.CALL_PHONE")
အာ့အတိုင္း Permission တခုေရးထည့္ေပးပါ။ပီးရင္ Save ပီး Run ၾကည့္ပါ။
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment