How to develop android phone app replacement - Android Q&A, Help & Troubleshooting

I want to develop an app (with java not kotlin) to replace phone app like described at this medium page.
https://medium.com/makingtuenti/android-default-dialer-replacement-part-i-722d05ca50fe
I managed to write a java code that works as a phone app. It works for some basic functionalities such as answering a call, rejecting a call, hangup the call. But I failed to develop following features:
If screen is turned off, I can't manage to turn on the screen, when anyone calls.
Activate hands free (speaker) during a call
Mute the microphone during a call
I haven't tried to develop these functionalities:
Hold the call
Add another call (conference call)
Video call
Send key tone (DTMF) during a call
Is there any developer that can assist me how to develop these functionalities with java?
Thanks

Related

Customizing end call !

Hi again:
Is there any patch to allow customizing the end call key just like you customize the answer key?
Say you are using blutooth headset, you open your mobile to dial a number and once you're engaged, you would want to close the flip and continue talking. Clearly call is cut !
samery

[Q] Android applications

I have got a LG-Optimus P-698 android phone. I request for following help.
1. Is there a software that will help me to attend my incoming calls without the need to slide the call attending (green) button? It sometimes requires two hands to attend an incoming call.
2. How do I access the last made call to recall this number. In other touch phones it I just press one of the buttons (usually the left corner button at the bottom), it will make a call to the last called or last missed call.
Thank you.

[Q] Call forwarding using conference feature

Hi guys,
has anyone of you encounterd an app which can redirect calls using the phoneline it self. For example:
Phone gets a call from the network-->phone answer the call with mute and a special recording saying "you are being redirected"--> phone calls a third party and create a conference between the two calls.
really needs it for my business..
any help would b appriciated...
THX

[Q] Is there any way to disable bluetooth last number redial

Hi,
As the title suggests, is there any way to disable the bluetooth last number redial functionlity.
I have a Xperia Mini Pro (SK17i, Bootloader unlocked, Rooted) with a Samsung HM1700 bluetooth headset. The headset has a button for answering / ending calls and this same button also has the last number redial functionality, ie when not in a call, pressing this button redials the last dialed number.
AFAIK, the headset just sends a signal to the mobile which then calls the last dialed number.
What I need, is to disable only the bluetooth redial functionality on my mobile.
[ BUMP]
Any suggestions anyone?
Sent from my SK17i
BUMP
Sent from my SK17i
You can try the app Smart Bluetooth Headset from the Play Store.You can not only disable it but also make it do something useful
Since the app "Smart Bluetooth Headset" does not work reliably for me (e.g. not activated by default after program start) I use this now: Go to Bluetooth settings and find your headset. Uncheck Phone to disable the headset from being used for voice calls.
Use an app on your smartphone to enable bluetooth on call and disable after call. There are many apps for this, for example bluetooth on call: https://www.addictivetips.com/mobil...ndroid-bluetooth-for-bt-headset-during-calls/
In addition to solving this problem your phone battery will last longer.
Regards Rob.
Necroing this thread to say that I tried "Headset Button Controller" and "Smart Bluetooth Headset" apps, both free versions, on my rooted HTC10 running Oreo 8.0 with a paired MPOW Crescent. Both apps worked, in slightly different ways.
Headset Button Controller places a dummy call on the call log. Activating the redial function on the headset (double click the answer/end call button on the MPOW Crescent) makes the phone call to the dummy thing, and a little window shows asking for a valid number. No call is actually made.
Problem is, if a valid call is made (for example, you call your boss or a friend), the dummy call setting must be reenabled again manually in the app - meaning that, if you make a valid call, the next time you activate the redial function on the headset, it will call the valid call.
Smart Bluetooth Headset works basically the same way, except that, instead, the redial attempts to call the * or *1 numbers. These attempts open the call window but close it right away, and immediately activate whatever you set the redial function to do. I set mine to run "Tasker 01", but didn't set what "Tasker 01" is. So, what my phone does when I (accidentally) activate the redial function on my headset is open and close the call window, and then return an onscreen self-fading error notification stating that Tasker 01 could not be found.
Best of all, the settings stick - meaning that, if you make a valid call, the redial function will still attempt to dial the * or *1 numbers, as long as the Smart Bluetooth Headset service is active.
So, in my experience, the Smart Bluetooth Headset app works the best.
Of course, I could just turn the headset on and off, whenever I need. It has a physical on/off switch, and immediately pairs with the phone (if previously paired) when turned on.
Awesome guys, thanks! Well written instructions Kam0laZ So nice when a solution presents itself effortlessly. Just turned on my new Bluetooth piece and INSTANTLY ( double tapping by mistake Just to get the damn thing in my ear hole) redialed my (dreaded) Ex BF..... TWICE! .... Noooooooo! Damn it! *Fists shaking furiously* And the ball was only in MY court but for a fleeting moment... wah wah
Could you share a link for these two apps? I've been trying to find them on the Google play store..
Unfortunately, redialing is no easy feat (like instead the stupid "media player opens" case).
https://github.com/LineageOS/android_system_bt/blob/lineage-17.1/bta/include/bta_ag_api.h#L319
https://github.com/LineageOS/android_system_bt/blob/lineage-17.1/btif/src/btif_hf.cc#L423
https://github.com/LineageOS/androi...e-17.1/jni/com_android_bluetooth_hfp.cpp#L194
https://github.com/LineageOS/androi...luetooth/hfp/HeadsetNativeInterface.java#L118
https://github.com/LineageOS/androi...ndroid/bluetooth/hfp/HeadsetStateMachine.java
https://github.com/LineageOS/androi...droid/bluetooth/hfp/HeadsetService.java#L1331
So, like, simply put.. You have a bluetooth HFP device that sends an AT+BLDN command to your phone.
The bluetooth stack runs DialCallCallback in the bluetooth package, which getLastDialledNumber from your phonebook, and then sends an ACTION_CALL_PRIVILEGED intent to the rest of the phone with the number to call.
Where could we act?
Perhaps if you could force some sort of HSP-only mode, you could avoid all the extra cruft but I'm not aware of any way to do so.
Similarly, there are plenty of ways to "directly hack the code", but I don't think anybody has got such a solution yet.
So my efforts have focused on disturbing the phone dialer from getting the action to call.
The problem is, "install-only" permissions aren't changeable. And without root you can't even hope to revoke android.permission.READ_CALL_LOG. And without xposed you can't even block intents.
(if you have either of these though, something could be done I guess?)
So long story short, well, Smart Bluetooth Headset still sounds like the best option.
It's no longer available in any official place as already stated.. But luckily enough it was open source!
We'll see.
Hi,
Install macrodroid app from play store.
Create a macro as follows:
Trigger:
Call/sms -> call outgoing
(Select number(s) from the 3 bullet menu that appears, it is the 3rd)
Enter * (meaning all calls)
Action:
Phone -> call reject
Save the macro.
That's it !!!
Keep in mind to let the macrodroid app on the white list of any battery saver app you may have installed or is built in the android it self (eg xiaomi phones) easy to make it unrestricted to not be killed by any task manager.
Simple solution, minimal battery drain, no wake up the phone to check. The macro runs only on call intent
Thats's it.
Thanks
kounelii said:
kounelii said:
Hi,
Install macrodroid app from play store.
Create a macro as follows:
Trigger:
Call/sms -> call outgoing
(Select number(s) from the 3 bullet menu that appears, it is the 3rd)
Enter * (meaning all calls)
Action:
Phone -> call reject
Save the macro.
That's it !!!
Keep in mind to let the macrodroid app on the white list of any battery saver app you may have installed or is built in the android it self (eg xiaomi phones) easy to make it unrestricted to not be killed by any task manager.
Simple solution, minimal battery drain, no wake up the phone to check. The macro runs only on call intent
Thats's it.
Thanks
Click to expand...
Click to collapse
Click to expand...
Click to collapse
@kounelii how do you configure the macro so that it only applies to calls made from headphones when last number redial is executed?
kounelii said:
Hi,
Install macrodroid app from play store.
Create a macro as follows:
Trigger:
Call/sms -> call outgoing
(Select number(s) from the 3 bullet menu that appears, it is the 3rd)
Enter * (meaning all calls)
Action:
Phone -> call reject
Save the macro.
That's it !!!
Keep in mind to let the macrodroid app on the white list of any battery saver app you may have installed or is built in the android it self (eg xiaomi phones) easy to make it unrestricted to not be killed by any task manager.
Simple solution, minimal battery drain, no wake up the phone to check. The macro runs only on call intent
Thats's it.
Thanks
Click to expand...
Click to collapse

[AMAZFIT STRATOS][GUIDE]Accept incoming calls

On the Amazfit watches (including the Stratos), you can only Reject the call or Ignore the call.
Here is a very simple trick to change the Ignore Call action with Accept Call action.
You need TASKER (of course) installed on your smartphone:
- Create a new TASK called for instance "Accept call", Add action "Take the call" in the Category "Phone". (Sorry, my Tasker is in French and actions could be different in English)
- Create a new PROFILE, category "State", select Variable, Variable value, %SILENT ~ on
- Backward. A menu appears to select a Task. Select the task "Accept call" you have previously created
- Long press on the Variable value "%SILENT", a menu appears with Add (+), click on it
- Select "State", click on "Phone", (verify that it's Incoming type)
- Backward to Profiles
You need to set the sound of the smartphone to vibrations or ring but not to silent for both call and messages. The drawback is, if you select the silent mode by error, that the smartphone will automatically accept the call immediately.
If you want (like me) that your smartphone doesn't vibrate when a call or a message occur, you can set the vibrations to the minimum and create a vibration patern with Nothing (it's possible with my Samsung Galaxy)
Et voilĂ  !!
I'm surprised that nobody is interestes by this post !
It's so usefull to accept the incoming calls just by pressing a button or the screen on the watch.
This trick is valid with all smartwatches proposing reject or ignore call.
pidobeuliou said:
I'm surprised that nobody is interestes by this post !
It's so usefull to accept the incoming calls just by pressing a button or the screen on the watch.
This trick is valid with all smartwatches proposing reject or ignore call.
Click to expand...
Click to collapse
For me even if accept incoming call from the watch I must take off the phone from the pocket to talk. So if I take off the phone I can accept call from the phone. If I answer the phone from a BT device I accept call from the BT device, so no need to accept from the watch. Different for an Huawei 2 watch or a Samsung S3 where I can accept the incoming call from the watch AND Answer to the call from the watch.
dersie said:
For me even if accept incoming call from the watch I must take off the phone from the pocket to talk. So if I take off the phone I can accept call from the phone. If I answer the phone from a BT device I accept call from the BT device, so no need to accept from the watch. Different for an Huawei 2 watch or a Samsung S3 where I can accept the incoming call from the watch AND Answer to the call from the watch.
Click to expand...
Click to collapse
Ok. But if your phone is in your jacket or a bag or placed somewhere in your house/car, and if you have a flip cover and finally if your network provider limits the ring time before going to voicemail, you will be happy to accept the call from your watch then get few seconds more to get your phone and speak directly without doing any additional button press/swipe on the phone screen.
The possibility to answer to the call from the watch (from the internal mic and loud speaker) seems to me useless except if your name is James, James Bond

Categories

Resources