How To Guide Enable Native Call Recording + OP Stock Dialer on OnePlus 10 Pro - OnePlus 10 Pro

Hi guys,
Just upgraded from OP7T to OP10 Pro as a European user.
Call recording functionality does not come with the device here.
Had native call recording enabled on my OP7T through jOnePlus Tools and the likes.
Jtools Oneplus does not install on our device.
Don't want to give up this very important functionality.
I'm sure there's a bunch of peeps here just like me.
To be clear, I haven't succeeded yet and I'm not a developer.
Hoping someone smarter than me can appreciate what a wonderful breakthrough it would be to make this work on the OP10 Pro.
I made some progress and have some clues which I'll share in summary below:
OP10 Pro comes with Google Dialer, not OnePlus dialer.
Google dialer natively either prohibits call recording or when succesfully enabled transmits a voice message to the other party disclosing the call is being recorded.
Enabled developer options by tapping build number 7 times in software version details (About Phone section in Settings)
In Developer Options: enabled USB debugging & OEM unlocking
jOnePlus Tools app (Play Store) does not install on our device.
Dev replied to a review in Play Store he discontinued further development of the app.
Following page lists what adb shell commands need to be executed to enable native call recording:
Enable Call Recorder on any OnePlus Device [Android 12]
In this comprehensive guide, we will show various methods (both root and non-root) to to enable Call Recorder on OnePlus devices.
www.droidwin.com
Commands on the previous page do not execute, but come back with an error stating "android.permission.GRANT_RUNTIME_PERMISSIONS" must preceed.
"pm grant <android app package name> android.permission.GRANT_RUNTIME_PERMISSIONS" is useless if there's no particular app available you want to do the writing
A YouTube video pointed to the following page providing links to download oos12 working OnePlus Dialer & Contacts app along with instructions to change the default dialer app:
Oneplus Stock Dialer for Oneplus Smartphones running OxygenOS 12
Oneplus Stock Dialer for Oneplus Smartphones running OxygenOS 12. Join Techibee Telegram Channel Join Now WhatsApp Group Join Now Along with the launch of Oneplus 8T, Oneplus started to Include a few google applications like Google Dialer & Google Messaging app as default communication...
techibee.in
The apps work as advertised albeit there's a floating balloon from the Google Dialer appearing overlayed on the OP Dialer when in a call.
After installation, settings of these apps still do not show the option for call recording in the settings options list
I vaguely remember there's a file, that I think needs root access to get to, that can be opened as a text file, in which you can change how your device interprets the region your device is used in, that afterward allows for the otherwise hidden native call recording function to be revealed. But it's been too long since I performed such an operation and can't even remember the name of this file. Maybe the way I explained it triggers someone's understanding here. I'm wondering if this could be a lead to a remaining thing to do to get that call recording function activated.
I fiddled a bit with different ways of writing the cmd adb commands, by for example using the app package names of the installed OP dialer and contacts apps within a pm grant command, but I'm too dumb to get it right, so no luck with that.
Hoping a smarter person here is willing to give it a go and make history
Cheers and godspeed !

Have you tried SKVALEX call recording app? Not sure if it works on Android 12 though. It needs root/magisk to work.

Macke93 said:
Have you tried SKVALEX call recording app? Not sure if it works on Android 12 though. It needs root/magisk to work.
Click to expand...
Click to collapse
Thank you for the suggestion. I am mainly interested in re-acquiring native call recording functionality. I was also informed that Android 12 indeed does not permit any third party call recording apps to function properly. Asides from that, a non-root method is what I pursue as primary objective. But thank you for suggesting, I appreciate it

Got my OP10Pro today too, waiting to see if someone comes up with turning recording on! Such a great feature, would be a waste to miss it!

So for those interested in knowing what the error in adb is that comes back:
Exception occurred while executing 'put':
java.lang.SecurityException: Permission denial: writing to settings requires:android.permission.WRITE_SECURE_SETTINGS
at com.android.providers.settings.SettingsProvider.enforceWritePermission(SettingsProvider.java:2663)
at com.android.providers.settings.SettingsProvider.mutateGlobalSetting(SettingsProvider.java:1635)
at com.android.providers.settings.SettingsProvider.insertGlobalSetting(SettingsProvider.java:1589)
at com.android.providers.settings.SettingsProvider.call(SettingsProvider.java:591)
at android.content.ContentProvider.call(ContentProvider.java:2473)
at android.content.ContentProvider$Transport.call(ContentProvider.java:521)
at com.android.providers.settings.SettingsService$MyShellCommand.putForUser(SettingsService.java:382)
at com.android.providers.settings.SettingsService$MyShellCommand.onCommand(SettingsService.java:278)
at com.android.modules.utils.BasicShellCommandHandler.exec(BasicShellCommandHandler.java:97)
at android.os.ShellCommand.exec(ShellCommand.java:38)
at com.android.providers.settings.SettingsService.onShellCommand(SettingsService.java:50)
at android.os.Binder.shellCommand(Binder.java:970)
at android.os.Binder.onTransact(Binder.java:854)
at android.os.Binder.execTransactInternal(Binder.java:1226)
at android.os.Binder.execTransact(Binder.java:1163)

Hi guys,
Found a solution !
Go to Developer Options.
Scroll to an option near the end of the list called Disable Permission Monitoring --> Enable it & the command ./adb shell settings put global op_voice_recording_supported_by_mcc 1 is now executing.
Make a call from your OnePlus Dialer and behold the native call recording button in all its glory !
Review the call recording from the call log of the number from which you recorded the call OR go to folder Music>Recordings>Call Recordings to find your entire list of call recordings
Please note that as I understand it, this call recording function will not survive a reboot. We need to re-execute this command in adb upon each reboot for the time being.
I also tried disabling the Google Dialer to get rid of that annoying floating bubble overlay on the OnePlus in-call UI, but that simply destroys the in-call UI alltogether by no longer revealing it! So the person who created those OP apps that work on our devices succeeded at making it work by accepting that floating bubble as part of the workaround.
I noticed that on few occasions the OnePlus dialer does not hijack the call in time and the call goes through the Google Dialer in-call UI instead. Anyway, not complaining now that I found it to work at least.
Going to fiddle around with Tasker or some other app that allows me to automate the above adb command to execute upon each reboot.
Edit: Think I'm way to dumb to figure out how I'm gonna be writing this task. If someone savvy can chime in, that'd be great !
Edit 2: Used the following page tutorial to get a paid app called LADB to work on my device that allows me to execute adb commands OTG:
How to Send ADB Commands to Your Own Phone Without a Computer or Root
There are three tiers to Android customization: things you can do by default, things you can do with ADB, and things you can do with root. While root is still pretty tricky to get, ADB mods just got a lot easier. Back in Android 9, Google added a feature that allowed you to wirelessly send ADB...
android.gadgethacks.com
So for now, upon each reboot, I'll just open up this app (you'll need access to wifi every time) and copy/paste the adb command in there without the ./ adb shell part added at the start. So use just settings put global op_voice_recording_supported_by_mcc 1 and tap enter. Boom ! You got call recording back in case you had to reboot OTG.
Still looking forward to find a savvy chap on this thread that can help with automating that adb command upon each reboot

anarche_diver said:
Hi guys,
Found a solution !
Go to Developer Options.
Scroll to an option near the end of the list called Disable Permission Monitoring --> Enable it & the command ./adb shell settings put global op_voice_recording_supported_by_mcc 1 is now executing.
Make a call from your OnePlus Dialer and behold the native call recording button in all its glory !
Review the call recording from the call log of the number from which you recorded the call OR go to folder Music>Recordings>Call Recordings to find your entire list of call recordings
Please note that as I understand it, this call recording function will not survive a reboot. We need to re-execute this command in adb upon each reboot for the time being.
I also tried disabling the Google Dialer to get rid of that annoying floating bubble overlay on the OnePlus in-call UI, but that simply destroys the in-call UI alltogether by no longer revealing it! So the person who created those OP apps that work on our devices succeeded at making it work by accepting that floating bubble as part of the workaround.
I noticed that on few occasions the OnePlus dialer does not hijack the call in time and the call goes through the Google Dialer in-call UI instead. Anyway, not complaining now that I found it to work at least.
Going to fiddle around with Tasker or some other app that allows me to automate the above adb command to execute upon each reboot.
Edit: Think I'm way to dumb to figure out how I'm gonna be writing this task. If someone savvy can chime in, that'd be great !
Edit 2: Used the following page tutorial to get a paid app called LADB to work on my device that allows me to execute adb commands OTG:
How to Send ADB Commands to Your Own Phone Without a Computer or Root
There are three tiers to Android customization: things you can do by default, things you can do with ADB, and things you can do with root. While root is still pretty tricky to get, ADB mods just got a lot easier. Back in Android 9, Google added a feature that allowed you to wirelessly send ADB...
android.gadgethacks.com
So for now, upon each reboot, I'll just open up this app (you'll need access to wifi every time) and copy/paste the adb command in there without the ./ adb shell part added at the start. So use just settings put global op_voice_recording_supported_by_mcc 1 and tap enter. Boom ! You got call recording back in case you had to reboot OTG.
Still looking forward to find a savvy chap on this thread that can help with automating that adb command upon each reboot
Click to expand...
Click to collapse
Though i dont own 10pro, i like the way you put your efforts. I'm using 9r, and i still didn't updated the os from first one with which it came out of box, because of this security/privacy drama of google; but it's okay for google record each and every move we make.

Seems that incoming calls still run through the Google dialer and disables the call recording function again. Needed to execute the command again several times now, whilst I didn't perform any reboots throughout that time that could have invoked that otherwise.
Oberserved if it deactivated after an incoming call, once I noticed that this has happened before. Strangely, last incoming call that went through Google dialer didn't disable it. I may be completely wrong. Something else might be causing that deactivation. Maybe the system's automated security measures baked in are reverting it, idk.
I keep thinking about the build.prop file. I remember something was in there referring to how your device interprets the region it is used in. Supporting/unsupporting region sensitive functionalities. Like call recording..

This is really annoying.
I really liked OP stock dialler and contacts.
Hopefully there will be a way to bring it back without having to root the phone.

Just found this workaround...

No need to root or download all kind of developers apps, I uses on my oneplus 10 pro - oneplus call recorder app from the play store, it records - regular calls, skype, whatsapp, and more...

I tried to use OnePlus Call Recorder but It's renamed app Travis Call Recorder from same developer. The app works like most others, records only silence when using an external handsfree or headphones. the app doesn't replace the native call recorder. Recordings with using OnePlus dialer truly works from guide TechiBee.

Installing the previous version of Joneplus Tools from apkmirror works. Granted adb permissions to the app through LADB (read above) and it seems to work fine.
Also check Techibee's latest video if you want to learn how to properly handle the OP Dialer sometimes not being revealed as the primary Dialer on screen. He also explains how you can access the OP Dialer on incoming calls.
It's a welcome addition to the above advised steps for those who are not in Call Recording native activated regions (Europe, other?...)

I have android 12, on my oneplus joneplus doesn't work on this version any more. And as for the oneplus call recorder, it is available on play store, i have Chinese oneplus 10 pro version ne2210 with European rom ne2215. Its working and recording any call. For the old os i guess joneplus still works, it was working on my previous phone.
Who really wants it, i mean, you need to use adb with developer option to make it work.
But if thats the only option you have, so use it.
Another thing, on the new os, i dont have the phone app from oneplus, its google phone app so i dont think we can add the joneplus and the native call recorder unless you install the phone app from oneplus, but again, you will have to use adb and install updates for the new app by your own, and who knows if that will even work.

I think for you to download the app oneplus call recorder or joneplus, it depends on the os version and also maybe the region that you are in.

I found this link to the app https://www.google.com/amp/s/apkpremier.com/amp/com-travis-callrecorder-oneplus

shhuhs said:
I have android 12, on my oneplus joneplus doesn't work on this version any more. And as for the oneplus call recorder, it is available on play store, i have Chinese oneplus 10 pro version ne2210 with European rom ne2215. Its working and recording any call. For the old os i guess joneplus still works, it was working on my previous phone.
Who really wants it, i mean, you need to use adb with developer option to make it work.
But if thats the only option you have, so use it.
Another thing, on the new os, i dont have the phone app from oneplus, its google phone app so i dont think we can add the joneplus and the native call recorder unless you install the phone app from oneplus, but again, you will have to use adb and install updates for the new app by your own, and who knows if that will even work.
Click to expand...
Click to collapse
Thank you, but what you propose is completely different than what I've created this thread for.
The idea was to find a workable solution in obtaining native call recording inside OnePlus Dialer, whilst Joneplus Tools seemed to no longer install on android 12.
All these things have been RESOLVED and shared above to the extent that it is possible at this time of writing.
In my posts above I've shared links to where the OP Dialer can be downloaded along with a link on how to install it and make it default. I explained how to get the adb command to execute.
I provided a solution for adb OTG (LADB), given the adb command needs to be re-executed at times.
In my last post I also shared that the second to last version of Joneplus Tools DOES INSTALL on our device that comes with Android 12 pre-installed.

anarche_diver said:
Hi guys,
Found a solution !
Go to Developer Options.
Scroll to an option near the end of the list called Disable Permission Monitoring --> Enable it & the command ./adb shell settings put global op_voice_recording_supported_by_mcc 1 is now executing.
Make a call from your OnePlus Dialer and behold the native call recording button in all its glory !
Review the call recording from the call log of the number from which you recorded the call OR go to folder Music>Recordings>Call Recordings to find your entire list of call recordings
Please note that as I understand it, this call recording function will not survive a reboot. We need to re-execute this command in adb upon each reboot for the time being.
I also tried disabling the Google Dialer to get rid of that annoying floating bubble overlay on the OnePlus in-call UI, but that simply destroys the in-call UI alltogether by no longer revealing it! So the person who created those OP apps that work on our devices succeeded at making it work by accepting that floating bubble as part of the workaround.
I noticed that on few occasions the OnePlus dialer does not hijack the call in time and the call goes through the Google Dialer in-call UI instead. Anyway, not complaining now that I found it to work at least.
Going to fiddle around with Tasker or some other app that allows me to automate the above adb command to execute upon each reboot.
Edit: Think I'm way to dumb to figure out how I'm gonna be writing this task. If someone savvy can chime in, that'd be great !
Edit 2: Used the following page tutorial to get a paid app called LADB to work on my device that allows me to execute adb commands OTG:
How to Send ADB Commands to Your Own Phone Without a Computer or Root
There are three tiers to Android customization: things you can do by default, things you can do with ADB, and things you can do with root. While root is still pretty tricky to get, ADB mods just got a lot easier. Back in Android 9, Google added a feature that allowed you to wirelessly send ADB...
android.gadgethacks.com
So for now, upon each reboot, I'll just open up this app (you'll need access to wifi every time) and copy/paste the adb command in there without the ./ adb shell part added at the start. So use just settings put global op_voice_recording_supported_by_mcc 1 and tap enter. Boom ! You got call recording back in case you had to reboot OTG.
Still looking forward to find a savvy chap on this thread that can help with automating that adb command upon each reboot
Click to expand...
Click to collapse
anarche_diver said:
Hi guys,
Found a solution !
Go to Developer Options.
Scroll to an option near the end of the list called Disable Permission Monitoring --> Enable it & the command ./adb shell settings put global op_voice_recording_supported_by_mcc 1 is now executing.
Make a call from your OnePlus Dialer and behold the native call recording button in all its glory !
Review the call recording from the call log of the number from which you recorded the call OR go to folder Music>Recordings>Call Recordings to find your entire list of call recordings
Please note that as I understand it, this call recording function will not survive a reboot. We need to re-execute this command in adb upon each reboot for the time being.
I also tried disabling the Google Dialer to get rid of that annoying floating bubble overlay on the OnePlus in-call UI, but that simply destroys the in-call UI alltogether by no longer revealing it! So the person who created those OP apps that work on our devices succeeded at making it work by accepting that floating bubble as part of the workaround.
I noticed that on few occasions the OnePlus dialer does not hijack the call in time and the call goes through the Google Dialer in-call UI instead. Anyway, not complaining now that I found it to work at least.
Going to fiddle around with Tasker or some other app that allows me to automate the above adb command to execute upon each reboot.
Edit: Think I'm way to dumb to figure out how I'm gonna be writing this task. If someone savvy can chime in, that'd be great !
Edit 2: Used the following page tutorial to get a paid app called LADB to work on my device that allows me to execute adb commands OTG:
How to Send ADB Commands to Your Own Phone Without a Computer or Root
There are three tiers to Android customization: things you can do by default, things you can do with ADB, and things you can do with root. While root is still pretty tricky to get, ADB mods just got a lot easier. Back in Android 9, Google added a feature that allowed you to wirelessly send ADB...
android.gadgethacks.com
So for now, upon each reboot, I'll just open up this app (you'll need access to wifi every time) and copy/paste the adb command in there without the ./ adb shell part added at the start. So use just settings put global op_voice_recording_supported_by_mcc 1 and tap enter. Boom ! You got call recording back in case you had to reboot OTG.
Still looking forward to find a savvy chap on this thread that can help with automating that adb command upon each reboot
Click to expand...
Click to collapse
@anarche_diver Hello, thank you for the detailed post. I just switched from 7Pro to 10Pro (NE2213) as well and was looking to get native call recording. Firstly, you shouldn't be selling yourself short as you are definitely smart enough to have put in the efforts at the right places it seems, a special thanks for that
However, I am stuck at LADB. After I have plugged in the command (copy pasted from your post), it shows the following error. Could you maybe help me figure out what I did wrong ? Thanks in advance & below is a screenshot from LADB.
Edit : Please note that one way or another, I would love to get the native call recording feature. And I don't mind even if the voice announcement of call recording is issued

has anyone found a very good stock dialer for root my device?

anarche_diver said:
Hi guys,
Found a solution !
Go to Developer Options.
Scroll to an option near the end of the list called Disable Permission Monitoring --> Enable it & the command ./adb shell settings put global op_voice_recording_supported_by_mcc 1 is now executing.
Make a call from your OnePlus Dialer and behold the native call recording button in all its glory !
Review the call recording from the call log of the number from which you recorded the call OR go to folder Music>Recordings>Call Recordings to find your entire list of call recordings
Please note that as I understand it, this call recording function will not survive a reboot. We need to re-execute this command in adb upon each reboot for the time being.
I also tried disabling the Google Dialer to get rid of that annoying floating bubble overlay on the OnePlus in-call UI, but that simply destroys the in-call UI alltogether by no longer revealing it! So the person who created those OP apps that work on our devices succeeded at making it work by accepting that floating bubble as part of the workaround.
I noticed that on few occasions the OnePlus dialer does not hijack the call in time and the call goes through the Google Dialer in-call UI instead. Anyway, not complaining now that I found it to work at least.
Going to fiddle around with Tasker or some other app that allows me to automate the above adb command to execute upon each reboot.
Edit: Think I'm way to dumb to figure out how I'm gonna be writing this task. If someone savvy can chime in, that'd be great !
Edit 2: Used the following page tutorial to get a paid app called LADB to work on my device that allows me to execute adb commands OTG:
How to Send ADB Commands to Your Own Phone Without a Computer or Root
There are three tiers to Android customization: things you can do by default, things you can do with ADB, and things you can do with root. While root is still pretty tricky to get, ADB mods just got a lot easier. Back in Android 9, Google added a feature that allowed you to wirelessly send ADB...
android.gadgethacks.com
So for now, upon each reboot, I'll just open up this app (you'll need access to wifi every time) and copy/paste the adb command in there without the ./ adb shell part added at the start. So use just settings put global op_voice_recording_supported_by_mcc 1 and tap enter. Boom ! You got call recording back in case you had to reboot OTG.
Still looking forward to find a savvy chap on this thread that can help with automating that adb command upon each reboot
Click to expand...
Click to collapse
It's working for my OnePlus 8 Pro which running OOS12 EU.

Related

[APP] Call recorder (ROOT access needed) [Nov 24 update]

I wrote this program because I was unable to find a good app capable of recording the other side of the call properly.
Except for AirVoice, all such apps record the speaker rather than the line, and you barely hear the other side in the recordings.
The guy who wrote AirVoice knew the trick but seemed to be very annoyed by the negative feedback from Android Market, where the users of various devices (with the list of supported ones clearly stated!) tried to install that program. Because it wasn't open source, I had to disassemble it in order to write what I wanted exactly.
So the app uses an esoteric HTC driver, and NEEDS THE ROOT ACCESS just to open the device. If you do "adb shell chmod 666 '/dev/voc*' ", it'll never ask you for root access (but you have to be ROOT to execute that command).
It writes the calls in either WAV (recommended) or MP3 format (not tested much; needs some time to encode the file after the call, but the size is about 4 times smaller), stereo (left ear is your voice, right is that of the other party), to "/sdcard/voix" directory.
The kernel driver itself is kinda buggy. Actually, the auto-answer mode is non-functional for kendon's & ninpo's kernels (others not tested). Do NOT select it in Settings unless you've got such ROM and particularly need to reboot your phone on each incoming call . It'd be nice if somebody try to fix that.
If you select "Ask each time" for any incoming calls, be sure to wait half a mo until the confirmation dialog appears. The "Foreground service" (default) setting is also recommended because Android may otherwise kill it if memory is low.
Any comments are welcome. I'm not sure that I'll ever add something to this program because I'm too lazy for that, but any bugs will reasonably be fixed. The code is open source, PM me if you're a programmer and have any ideas how to improve it.
=======================
NOV 24 UPDATE
Numerous improvements/corrections/bugfixes (I'm not removing the previous version as this one haven't been much tested).
Enjoy!
Thanks dude. Great job
avs333 said:
I wrote this program because I was unable to find a good app capable of recording the other side of the call properly.
Except for AirVoice, all such apps record the speaker rather than the line, and you barely hear the other side in the recordings.
The guy who wrote AirVoice knew the trick but seemed to be very annoyed by the negative feedback from Android Market, where the users of various devices (with the list of supported ones clearly stated!) tried to install that program. Because it wasn't open source, I had to disassemble it in order to write what I wanted exactly.
So the app uses an esoteric HTC driver, and NEEDS THE ROOT ACCESS just to open the device. If you do "adb shell chmod 666 '/dev/voc*' ", it'll never ask you for root access (but you have to be ROOT to execute that command).
It writes the calls in either WAV (recommended) or MP3 format (not tested much; needs some time to encode the file after the call, but the size is about 4 times smaller), stereo (left ear is your voice, right is that of the other party), to "/sdcard/voix" directory.
The kernel driver itself is kinda buggy. Actually, the auto-answer mode is non-functional for kendon's & ninpo's kernels (others not tested). Do NOT select it in Settings unless you've got such ROM and particularly need to reboot your phone on each incoming call . It'd be nice if somebody try to fix that.
If you select "Ask each time" for any incoming calls, be sure to wait half a mo until the confirmation dialog appears. The "Foreground service" (default) setting is also recommended because Android may otherwise kill it if memory is low.
Any comments are welcome. I'm not sure that I'll ever add something to this program because I'm too lazy for that, but any bugs will reasonably be fixed. The code is open source, PM me if you're a programmer and have any ideas how to improve it.
Click to expand...
Click to collapse
thanks, good job
but recorded sound a lit low, any chance to make it loud
Aha Thats Great Now i can prove my prank calls
no auto start, please add (i mean after re-boot)
Hi-Fi said:
but recorded sound a lit low, any chance to make it loud
Click to expand...
Click to collapse
No problems with sound volume here, but I'll see if I can add some basic volume normalisation...
Hi-Fi said:
no auto start, please add (i mean after re-boot)
Click to expand...
Click to collapse
Added as an option in Settings. Also fixed a triffle UI bug (forgetting to set proper dialog attributes).
Just tried this, works great on my Hero (Vanilla Eclair 4.0). Thank you very much for this one!
Interesting software. Could you possibly add a new feature: The app saves all calls, but deletes them, if you don't move them to another folder/to your PC.
This because I could record all of my calls, without the risk of making a huge 1Gt folder to fill up my memory. So if the user could choose how many recent calls (2,5,10) the app saves before deleting them I'd be great!
What about battery draining?
This great app is also tiny enough not to reduce drastically battery duration?
TIA
I'd love to see this generalized to not require the HTC driver. Do you think that would be possible?
cool app. anyone know if it would be possible to play an audio file directly to the caller? would come in handy rickrolling damn telemarketers
Very good work. Handy app, for sure.
Can you enable recording mid call?
Works in all Androis Devices? I have a Milestone.
Awesome idea, I've been looking for exactly this sort of software.
I'm having a bug I hope someone can help me with. When I start the program I get a prompt that says "Device does not exist, or its permissions cannot be changed." When I click "OK" it takes me to the screen to uninstall the program.
I'm running an Evo, fully rooted, NAND unlocked, running Virus Airbourne ROM and King #11 kernel.
I never get the prompt from the SuperUser app to give the app root access.
I tried the adb command but it gave me the error:
Unable to chmod dev/voc*: No such file or directory
Having same issue on rooted G2.
Sent from my T-Mobile G2 using XDA App
MercuryTangent said:
Awesome idea, I've been looking for exactly this sort of software.
I'm having a bug I hope someone can help me with. When I start the program I get a prompt that says "Device does not exist, or its permissions cannot be changed." When I click "OK" it takes me to the screen to uninstall the program.
I'm running an Evo, fully rooted, NAND unlocked, running Virus Airbourne ROM and King #11 kernel.
I never get the prompt from the SuperUser app to give the app root access.
I tried the adb command but it gave me the error:
Unable to chmod dev/voc*: No such file or directory
Click to expand...
Click to collapse
I experience the same problems on my rooted DINC. ROM and kernel are in sig.
Am I right to assume that this is a HTC Hero exclusive?
bemymonkey said:
Am I right to assume that this is a HTC Hero exclusive?
Click to expand...
Click to collapse
Likely so, but I'm hoping the dev will extend it or I can find a way to make it work
This is amazing app. The only thing I would beg the author to consider a white status bar icon for normal running service as colored icons there usually break the aestetics of Android UI. The icon can change or become colored while recording, but when only running in the background it should remain white.
I have the same problem (link to uninstall) on my Nexus One. Everything works fine on Hero

Google voice commands / "oke google"

Hi,
I'm wondering if some of you KLD / KLG / MX / etc unit owners are using google voice commands. I can't use it properly on my unit, it crashes all the time. Sometimes it works, but usually it crashes. I'm using Malaysk rom. Is there anybody who can you use google voice without any problems? Or is there a simpel solution to fix my issues? I'm using a external mic connected with a jack to the backside of my unit.
I have spent a lot of time with this issue. My views are that the OEM version of the Google app is the only stable version(for voice use) for these HUs. My JY solution was to extract the Velvet.apk from the factory ROM. After updating to a Malsysk ROM, I replaced the pre updated apk back to the older factory version. You will lose out out on some updated features, but having a working voice command is nice tradeoff.
Velvet.apk, OEM JY Version
https://drive.google.com/file/d/0B0iQtPEIFgeHR3hQdGlvd2RrVUk/view?usp=sharing
Missing features.
carter.w.jason said:
I have spent a lot of time with this issue. My views are that the OEM version of the Google app is the only stable version(for voice use) for these HUs. My JY solution was to extract the Velvet.apk from the factory ROM. After updating to a Malsysk ROM, I replaced the pre updated apk back to the older factory version. You will lose out out on some updated features, but having a working voice command is nice tradeoff.
Velvet.apk, OEM JY Version
Click to expand...
Click to collapse
Hi, Does your okay google now allow you to make phone calls, send email etc.... what features are you loosing out by going this route. Thanks!!!!
aledesma said:
Hi, Does your okay google now allow you to make phone calls, send email etc.... what features are you loosing out by going this route. Thanks!!!!
Click to expand...
Click to collapse
Phone calls? No. I believe this is a common issue, there is no phone hardware onboard. Though I'm not that familiar with that feature.
Email and other task could be handled with Autovoice if Google app can not. Again, not that familiar.
For me, the main missing feature was choice of navigation app. Nav questions will only launch GMaps, newer version can launch Waze or your nag app choice, by default.
carter.w.jason said:
I have spent a lot of time with this issue. My views are that the OEM version of the Google app is the only stable version(for voice use) for these HUs. My JY solution was to extract the Velvet.apk from the factory ROM. After updating to a Malsysk ROM, I replaced the pre updated apk back to the older factory version. You will lose out out on some updated features, but having a working voice command is nice tradeoff.
Velvet.apk, OEM JY Version
https://drive.google.com/file/d/0B0iQtPEIFgeHR3hQdGlvd2RrVUk/view?usp=sharing
Click to expand...
Click to collapse
Thanks for your comment. I tried your solution and its working better, i still get some errors time to time, but is much better...thanks
[
aledesma said:
Hi, Does your okay google now allow you to make phone calls, send email etc.... what features are you loosing out by going this route. Thanks!!!!
Click to expand...
Click to collapse
If you have a phone connected via BT you can make phone calls using OK Google.
Tumke32 said:
Hi,
I'm wondering if some of you KLD / KLG / MX / etc unit owners are using google voice commands. I can't use it properly on my unit, it crashes all the time. Sometimes it works, but usually it crashes. I'm using Malaysk rom. Is there anybody who can you use google voice without any problems? Or is there a simpel solution to fix my issues? I'm using a external mic connected with a jack to the backside of my unit.
Click to expand...
Click to collapse
I've read some posts in the Malaysk ROM thread and many people have modded their units by opening them up and re-runing the internal mic. It's that mic, not the external, that is used for voice commands and apparently it is an unshielded wire that allows for a lot of interference and therefore unreliable google voice. I'm still foggy on the voice dialing but someone somewhere got this to work but not through the native bluetooth app. I think I read that they used the RK3066/Rk3188 app in the google play store or something...I'm just getting started with my unit and it's not even installed yet. Hopefully some of this was insightful for you.
newt_dunbarton said:
I've read some posts in the Malaysk ROM thread and many people have modded their units by opening them up and re-runing the internal mic. It's that mic, not the external, that is used for voice commands and apparently it is an unshielded wire that allows for a lot of interference and therefore unreliable google voice. I'm still foggy on the voice dialing but someone somewhere got this to work but not through the native bluetooth app. I think I read that they used the RK3066/Rk3188 app in the google play store or something...I'm just getting started with my unit and it's not even installed yet. Hopefully some of this was insightful for you.
Click to expand...
Click to collapse
I am using the latest Malaysk ROM dated 10th January 2016 for RK3188 1024*600. It lets me speak Ok Google and Call (contact name) to the phone when after pressing the call button. The way it works for me is:
1. Whatever is playing on the unit, it stops when I press the call button on my steering;
2. It launches the unit's dial screen;
3. I say 'OK Google', it launches the ok google listener on the phone;
4. I say 'Call (contact name)' and it calls.
Few things I had to manage before this started working was:
1. Enable the option to receive commands over bluetooth in Google Now settings in the phone;
2. Enable to XPOSED MTC in the XPOSED framework in the head unit;
3. Change the setting to integrate with phone's google now interface (something like that) in XPOSED MTC module.
Hope this helps.
Can you elaborate on this process please?
carter.w.jason said:
I have spent a lot of time with this issue. My views are that the OEM version of the Google app is the only stable version(for voice use) for these HUs. My JY solution was to extract the Velvet.apk from the factory ROM. After updating to a Malsysk ROM, I replaced the pre updated apk back to the older factory version. You will lose out out on some updated features, but having a working voice command is nice tradeoff.
Velvet.apk, OEM JY Version
https://drive.google.com/file/d/0B0iQtPEIFgeHR3hQdGlvd2RrVUk/view?usp=sharing
Click to expand...
Click to collapse
Did you go to file manager and replace the Malaysk version? Where is it located? or did you simply install with with apk instal app. Than you so much!!!!
aledesma said:
Did you go to file manager and replace the Malaysk version? Where is it located? or did you simply install with with apk instal app. Than you so much!!!!
Click to expand...
Click to collapse
Uninstalled with Titanium Backup. Velvet.apk is located in /system/priv-app. Copy/Paste replacement Velvet.apk using Root Explorer. !!! Set file permissions to 644 with Root Explorer !!! Reboot.
shaiq123 said:
I am using the latest Malaysk ROM dated 10th January 2016 for RK3188 1024*600. It lets me speak Ok Google and Call (contact name) to the phone when after pressing the call button. The way it works for me is:
1. Whatever is playing on the unit, it stops when I press the call button on my steering;
2. It launches the unit's dial screen;
3. I say 'OK Google', it launches the ok google listener on the phone;
4. I say 'Call (contact name)' and it calls.
Few things I had to manage before this started working was:
1. Enable the option to receive commands over bluetooth in Google Now settings in the phone;
2. Enable to XPOSED MTC in the XPOSED framework in the head unit;
3. Change the setting to integrate with phone's google now interface (something like that) in XPOSED MTC module.
Hope this helps.
Click to expand...
Click to collapse
Hi,
1. Enable the option to receive commands over bluetooth in Google Now settings in the phone;
Were can i find this option? I have a nexus 5 and i updated my google now, but there no option like that in google now. Or do you mean the option "bluetooth headset" under voice?
3. Change the setting to integrate with phone's google now interface (something like that) in XPOSED MTC module.
I can't find any options in Xposed MTC related to what you are writing. Are you sure this option is in Xposed MTC?
Thank you!!!
carter.w.jason said:
Uninstalled with Titanium Backup. Velvet.apk is located in /system/priv-app. Copy/Paste replacement Velvet.apk using Root Explorer. !!! Set file permissions to 644 with Root Explorer !!! Reboot.
Click to expand...
Click to collapse
I will give it a shot!!!
Hi there,
I to have been wondering about the best way to get voice dialling working and as my google voice crashes the HU more often than not, I think it is best to do this as shaiq123 has suggested by pressing the call button the steering wheel and then Ok Googling the phone to make the call.
But my phone goes to lock screen in the car and that stops this working. What I would like is that when my phone connects to the car bluetooth it
1) stops it going to lockscreen
2) activates wifi hotspot
3) activates 'ok google' if it is not normally activated
and it reverses on disconnecting.
Is this something easily done or do I need some kind of app to do this?
A final thing that would be helpful, is that it would be useful to give the play music command to direct the HU to play music from an HU attached SD card rather than the phone memory. Is there a way to also configure that (i.e. that the command would seek music stored on HU rather than phone first?)
Cheers
Mr Bigglesworth said:
Hi there,
I to have been wondering about the best way to get voice dialling working and as my google voice crashes the HU more often than not, I think it is best to do this as shaiq123 has suggested by pressing the call button the steering wheel and then Ok Googling the phone to make the call.
But my phone goes to lock screen in the car and that stops this working. What I would like is that when my phone connects to the car bluetooth it
1) stops it going to lockscreen
2) activates wifi hotspot
3) activates 'ok google' if it is not normally activated
and it reverses on disconnecting.
Is this something easily done or do I need some kind of app to do this?
A final thing that would be helpful, is that it would be useful to give the play music command to direct the HU to play music from an HU attached SD card rather than the phone memory. Is there a way to also configure that (i.e. that the command would seek music stored on HU rather than phone first?)
Cheers
Click to expand...
Click to collapse
You could achieve the first part using Tasker, you would just create a profile to run your tasks that actives when your phone connects to the headunit. Its a great app for automating stuff like that.
dc5daft said:
You could achieve the first part using Tasker, you would just create a profile to run your tasks that actives when your phone connects to the headunit. Its a great app for automating stuff like that.
Click to expand...
Click to collapse
Thanks - in fact this morning I have downloaded the trial for Tasker as well as Automate to see if they can do what I am looking for.
I've decided what would be really helpful would be if I could
1) Use app to detect when phone connects to car HU via bluetooth
2) Launch Wifi Hotspot
3) set the camera button to unlock screen and activate google voice
Now 1&2 look like its not too difficult and may even be doable using the Sony Smart Connect app (on a Z2, not rooted).
3 doesn't seem to be as instantly obvious. In tasker, I put in a new profile>event>hardware>button camera, also selected non beginner settings so could pit priority to highest and activate stop event, then put the task as launch voice search app - but it just keeps doing the camera?
Mr Bigglesworth said:
Thanks - in fact this morning I have downloaded the trial for Tasker as well as Automate to see if they can do what I am looking for.
I've decided what would be really helpful would be if I could
1) Use app to detect when phone connects to car HU via bluetooth
2) Launch Wifi Hotspot
3) set the camera button to unlock screen and activate google voice
Now 1&2 look like its not too difficult and may even be doable using the Sony Smart Connect app (on a Z2, not rooted).
3 doesn't seem to be as instantly obvious. In tasker, I put in a new profile>event>hardware>button camera, also selected non beginner settings so could pit priority to highest and activate stop event, then put the task as launch voice search app - but it just keeps doing the camera?
Click to expand...
Click to collapse
Create a new Profile>State>Net>BT Connected then click the magnifying glass next to name and select the name of your headunit. This will mean whenever your bluetooth is connected to the headunit it will run the tasks associated with it. It will give you the option to name and create a task once you create your profile then create new>Net>WiFi Tether and set to On.
I have a Z2 as well and just tried the camera button as a profile and it didn't work for me either, you'll need to do some googling on that, not sure why it doesnt work. It's best to set a flash (Alert>Flash) in your task as a test to see if your task runs but I'm sure you need to need to have root to unlock the screen.
dc5daft said:
Create a new Profile>State>Net>BT Connected then click the magnifying glass next to name and select the name of your headunit. This will mean whenever your bluetooth is connected to the headunit it will run the tasks associated with it. It will give you the option to name and create a task once you create your profile then create new>Net>WiFi Tether and set to On.
I have a Z2 as well and just tried the camera button as a profile and it didn't work for me either, you'll need to do some googling on that, not sure why it doesnt work. It's best to set a flash (Alert>Flash) in your task as a test to see if your task runs but I'm sure you need to need to have root to unlock the screen.
Click to expand...
Click to collapse
Thanks for this - and yes this where I had got to (which make me feel better!). And I too think the camera button may not be workable without root.
I think I need to change my plans and see if I can prevent the lockscreen to come on when connected to this bluetooth device. That way I can fall back to using ok google as the lockscreen prevents ok google from completing requests.
Okay - think I've done that and it was easy enough, now have a profile which when connected to HU through bluetooth does (1) set off wifi tether and (2) Set keyguard off. Then with (3) double tap to wake screen and (4) Ok google should be able to do what I need it to.
Last thing I'm wondering if you could do is to create a large voice dial icon (double normal size etc) on screen (in case initial ok google doesn't work)...

[Plugin] Remote Adb Shell

Hi everyone!
I just created my first Tasker plug-in. This plug-in enables you to send an adb shell command to any other device on the network that has adb over wifi enabled. I for example use it to turn my androidtv on or off by sending it the command "input keyevent POWER". You can also open specific activities in apps for example or simulate touch input.
Please read the description before using it and don't hesitate to leave feedback/bug reports/tips! This is my first app ever published so I still have a lot to learn.
You can download it for free from the play store:
https://play.google.com/store/apps/details?id=com.ADBPlugin
Edit: It's now also available on XDA Labs! You can find it here
First update is live!
This includes proper (cat)logs and Tasker errors if something went wrong, so if you run in any problems, you can now tell me . It also plays a lot nicer with the Tasker timeout system.
@Humpie
Thanks for this plugin. I allready made a project for my sony android tv. Start apps and controll media play.
But to make the plugin better I have some featur requests:
It would be nice to be able to work with tasker variables. e.g input text "%mytext".
Another feature reqest would be to get a output variable for commands with output like adb shell pm list packages.
MartelKombat said:
@Humpie
Thanks for this plugin. I allready made a project for my sony android tv. Start apps and controll media play.
But to make the plugin better I have some featur requests:
It would be nice to be able to work with tasker variables. e.g input text "%mytext".
Another feature reqest would be to get a output variable for commands with output like adb shell pm list packages.
Click to expand...
Click to collapse
Thanks for the tips! Will definitely add variable support and I'll also have a look at output variables. They are visible in the logs already, but not yet to tasker.
Why can't we use the built-in code Acton in Tasker? Is there a difference?
loogielv said:
Why can't we use the built-in code Acton in Tasker? Is there a difference?
Click to expand...
Click to collapse
In fact there is, since android 4.something google removed adb from android devices, so you can't perform adb commands from your phone, well aside from my plugin that is.
There would however be no difference if your remote device did have Tasker and you programmed it so that a certain action does something with code. However, you would have to figure out a way to contact that device etc...
Second update! The Plugin now has Tasker variable support!
(enjoy @MartelKombat btw I'm still thinking about how to implement your other request!)
I doont understand. I can type the code, but i do have to remove the "adb sell" part of the code but it's good to go… is that not what this plugin does?
Humpie said:
Thanks for the tips! Will definitely add variable support and I'll also have a look at output variables. They are visible in the logs already, but not yet to tasker.
Click to expand...
Click to collapse
Humpie said:
Second update! The Plugin now has Tasker variable support!
(enjoy @MartelKombat btw I'm still thinking about how to implement your other request!)
Click to expand...
Click to collapse
Any news on the output variable? I have high hopes since you mentioned you already see the output in the logs...
Thanks a lot for this plugin! It makes an unrooted phone much easier to control!
How to run root commands on an unrooted device with this plugin
I just wanted to share how I use this plugin, just to give others an example of what this nice plugin is capable of.
Recently, I bought a new device and for now, I have no intention of rooting it. Coming from a rooted OnePlus One, this means some of my Tasker profiles do not work as expected anymore and I have to find workarounds.
On LineageOS (and CyanogenMod before that), we have the option to display left/right cursor arrows in the navigation bar when typing text. I always loved this feature, since placing the cursor in the right position by tapping will always be a hit&miss game. Since my new device (S7 Edge) has no onscreen navigation bar, I was searching for a replacement solution to move the cursor. I came up with the idea that it would be quite handy to use the volume buttons for this. So, the idea was the following:
IF the keyboard is shown THEN use the volume keys to move the cursor (and suppress any volume changes, if possible).
It took me a while to figure out how to determine whether the keyboard is out (solution: install another keyboard and intercept the "change input method" notification as a trigger). Suppressing the volume keys' usual behaviour was easy (AutoInput -> Key Suppress) but the final step turned out to be quite difficult: How to move the cursor?
After doing some extensive research, I always came to the same point: "not possible without root". Damn.
But then, this plugin came in. The keyword "remote" in its name might suggest that you can use this plugin only to act from one device to another, but that's not true. Actually, you can use this plugin to run adb commands on the same device.
What does that mean? It means that you can run an adb shell command like "adb shell input keyevent xy" on your phone WITHOUT ROOT. In my case, I can run "input keyevent 21" and "input keyevent 22" to move the cursor. So, how can we do that?
Prerequisites:
Connect your device via ADB to a PC (google it if you don't know how) and run the command "adb tcpip 5555". That's it, you can disconnect your device now.
Then in Tasker, create an action with this plugin and type in the following:
IP Address: localhost
Port: 5555
ADB Shell Command: input keyevent POWER
Hit the play button to test this action. If you've done everything right, your screen will turn off.
Congrats, you just executed a command on an unrooted device which usually requires root privileges!
Important:
The only downside is, the tcpip setting does not survive a reboot, so you have to set the port 5555 again via PC after rebooting the device.
I hope I explained the important part well enough. If that's not the case, don't hesitate to quote me and I'll answer here.
digitalpig82 said:
Any news on the output variable? I have high hopes since you mentioned you already see the output in the logs...
Thanks a lot for this plugin! It makes an unrooted phone much easier to control!
Click to expand...
Click to collapse
I'm sorry for my absence, really busy with school etc. (honestly, I also completely forgot, I hope you can forgive me). I'll try to look into it soon (this week or the next) and see how far I get. I really like that you like my plugin! I just found out myself last week that I can let unrooted phones send shell commands to themselves using my plugin, so I'm glad to see you found it out as well! (I used it for snapchat to simulate volume key presses, which is also possible without root indeed: https://www.reddit.com/r/tasker/comments/699sav/project_share_handsfree_snapchat_picture_and/ It also works for other camera apps that require you to hold the button to film, like whatsapp etc)
Edit: I hope it pleases you to hear that today I started working on it again. I already have the responses bundled in a list in Java, now I just need to parse them to Tasker
loogielv said:
I doont understand. I can type the code, but i do have to remove the "adb sell" part of the code but it's good to go… is that not what this plugin does?
Click to expand...
Click to collapse
Yes, you have to remove the "adb shell" part since all my plugin does is access the adb shell part. This means commands like adb pull etc won't work, that requires a different type of connection, that for now I can't achieve with Tasker. But running any remote shell command should be fine (like how you would run it if you were directly running the commands from a terminal on your phone)
digitalpig82 said:
I just wanted to share how I use this plugin, just to give others an example of what this nice plugin is capable of.
Recently, I bought a new device and for now, I have no intention of rooting it. Coming from a rooted OnePlus One, this means some of my Tasker profiles do not work as expected anymore and I have to find workarounds.
On LineageOS (and CyanogenMod before that), we have the option to display left/right cursor arrows in the navigation bar when typing text. I always loved this feature, since placing the cursor in the right position by tapping will always be a hit&miss game. Since my new device (S7 Edge) has no onscreen navigation bar, I was searching for a replacement solution to move the cursor. I came up with the idea that it would be quite handy to use the volume buttons for this. So, the idea was the following:
IF the keyboard is shown THEN use the volume keys to move the cursor (and suppress any volume changes, if possible).
It took me a while to figure out how to determine whether the keyboard is out (solution: install another keyboard and intercept the "change input method" notification as a trigger). Suppressing the volume keys' usual behaviour was easy (AutoInput -> Key Suppress) but the final step turned out to be quite difficult: How to move the cursor?
After doing some extensive research, I always came to the same point: "not possible without root". Damn.
But then, this plugin came in. The keyword "remote" in its name might suggest that you can use this plugin only to act from one device to another, but that's not true. Actually, you can use this plugin to run adb commands on the same device.
What does that mean? It means that you can run an adb shell command like "adb shell input keyevent xy" on your phone WITHOUT ROOT. In my case, I can run "input keyevent 21" and "input keyevent 22" to move the cursor. So, how can we do that?
Prerequisites:
Connect your device via ADB to a PC (google it if you don't know how) and run the command "adb tcpip 5555". That's it, you can disconnect your device now.
Then in Tasker, create an action with this plugin and type in the following:
IP Address: localhost
Port: 5555
ADB Shell Command: input keyevent POWER
Hit the play button to test this action. If you've done everything right, your screen will turn off.
Congrats, you just executed a command on an unrooted device which usually requires root privileges!
Important:
The only downside is, the tcpip setting does not survive a reboot, so you have to set the port 5555 again via PC after rebooting the device.
I hope I explained the important part well enough. If that's not the case, don't hesitate to quote me and I'll answer here.
Click to expand...
Click to collapse
So...is it possible to create a version of the plugin that runs locally and doesn't disappear on a reboot?
kenkiller said:
So...is it possible to create a version of the plugin that runs locally and doesn't disappear on a reboot?
Click to expand...
Click to collapse
I would like to be able to create such a think but I don't think Google would allow it since it's a big security flaw to have adb opened to the world at all time without notifying the user. Some devices however have a debug over wifi function hidden in the developer options (like the nvidia shield android tv), there you can just enable it and it will probably survive a reboot.
However what I would advise to do if this option is not available, is to create a .bat file on your desktop containing "adb tcpip 5555". That way after a reboot you can just plug in your phone, click the bat file and be done!
Humpie said:
I would like to be able to create such a think but I don't think Google would allow it since it's a big security flaw to have adb opened to the world at all time without notifying the user. Some devices however have a debug over wifi function hidden in the developer options (like the nvidia shield android tv), there you can just enable it and it will probably survive a reboot.
However what I would advise to do if this option is not available, is to create a .bat file on your desktop containing "adb tcpip 5555". That way after a reboot you can just plug in your phone, click the bat file and be done!
Click to expand...
Click to collapse
Hmm....But there's this custom nav bar app where it allows users to grant it adb shell permissions, and the permission survives over reboots. Auto tools and Securetask relies on the same process as well.
I guess what we're asking for is something that's not as encompassing as your plugin. Me, I just want to execute the power command without root in a way that respects smart lock, which is possible now with your app but doesn't survive a reboot, or with the custom nav bar app, which survives a reboot, but restricts me to using it in a tiny button on the nav bar, as the dev doesn't seem interested in exposing the commands to external usage.
---------- Post added at 07:30 AM ---------- Previous post was at 07:28 AM ----------
We discussed it in this part here....
https://forum.xda-developers.com/an...avigation-bar-customize-t3590967/post72212488
kenkiller said:
Hmm....But there's this custom nav bar app where it allows users to grant it adb shell permissions, and the permission survives over reboots. Auto tools and Securetask relies on the same process as well.
I guess what we're asking for is something that's not as encompassing as your plugin. Me, I just want to execute the power command without root in a way that respects smart lock, which is possible now with your app but doesn't survive a reboot, or with the custom nav bar app, which survives a reboot, but restricts me to using it in a tiny button on the nav bar, as the dev doesn't seem interested in exposing the commands to external usage.
---------- Post added at 07:30 AM ---------- Previous post was at 07:28 AM ----------
We discussed it in this part here....
https://forum.xda-developers.com/an...avigation-bar-customize-t3590967/post72212488
Click to expand...
Click to collapse
It seems this app uses specific android permissions to be able to send events etc. However my plugin has no direct access to the android system (only by using the adb bridge), so granting my plugin these permissions won't help. What however would help is if I could find a way to enable adb over wifi using only some permissions... I have no clue whether this is possible though as the app would have to call service.adb.tcp.port 5555 for itself and that needs root or an adb connection (so it still requires a laptop XD). I'm still trying though.
Humpie said:
It seems this app uses specific android permissions to be able to send events etc. However my plugin has no direct access to the android system (only by using the adb bridge), so granting my plugin these permissions won't help. What however would help is if I could find a way to enable adb over wifi using only some permissions... I have no clue whether this is possible though as the app would have to call service.adb.tcp.port 5555 for itself and that needs root or an adb connection (so it still requires a laptop XD). I'm still trying though.
Click to expand...
Click to collapse
No worries. It's just that it's so close yet so far, heheh.... I guess I'll have to reboot only when home.
kenkiller said:
No worries. It's just that it's so close yet so far, heheh.... I guess I'll have to reboot only when home.
Click to expand...
Click to collapse
I found out it is in fact possible to have wireless adb survive a reboot! However it requires a build.prop edit.
in \system\build.prop "service.adb.tcp.port=5555" needs to be added at the end of the file and then after a reboot adb over wifi will still be enabled (at least it was in my case).
The downside is that this modification can't be done via adb without root unless you have a custom recovery like TWRP and run adb while having that opened and /System/ mounted.
I'm trying to create a zip that modifies the build.prop how it should be modified, but I don't think it's possible to run it through a non-custom recovery...
Edit: I added my .bat file for modifying the build.prop adding that line. It uses an adb connection that requires more rights than what android allows when booted, but should probably work if you are able to access adb from recovery and you are of course booted in recovery mode (using recoveries like TWRP or even some stock manufacturer ones).
Update 4.3 is live!
As requested you can now access the output from the console directly in Tasker.
I tried to order everything neatly in a list, with each line in the console being an item in the list, but this does mean that the initial "device\sdcard $" et cetera get added as an item as well.
But since I didn't want to cut off anything important I just kept it that way. You can just modify the list in any way you want (AutoTools has some handy Array handling tools built in).
I also added some hints in the main screen just for fun.
If you run into any strange behaviour, bugs or have tips, please tell me!
digitalpig82 said:
Any news on the output variable? I have high hopes since you mentioned you already see the output in the logs...
Thanks a lot for this plugin! It makes an unrooted phone much easier to control!
Click to expand...
Click to collapse
Enjoy
Since most people are using my Plugin locally instead of remotely, I'm thinking of renaming it to just 'ADB Shell [Tasker]'. It would make it simpler when googling it. What do you think?

[REQUEST] Waze Module to allow use of Old Voice Packs

Waze uses celebrity voices for navigation occasionally but they are only available for a limited time.
This was the previous method of getting the voices to work once they were removed from the app: https://www.reddit.com/r/waze/comments/57t2ue/waze_voice_pack_archive/
It seems the old method of downloading a voice then replacing the .mp3 files in the folder now either result in no audio at all or just a glitchy experience.
It would be great to have a module that allows users to replace the voices with one of the old ones.
Here's a list of celebrity recordings in the new .mp3 format vs the reddit archive that uses .bin files: http://www.mikeyip.com/2016/04/celebrity-for-waze.html
Anyone willing to help out the community and make a simple module to do this? I know a lot of people would appreciate it!
Bump
How to get Waze celebrity and other voices back onto your Waze app
Hey, Merry Christmas everybody! I finally cracked the code - I hacked the waze celebrity voices back onto my Waze app!
As most of you have figured out, Waze recently disabled the ability to use whatever voices that you copy into the "sound" folder. With older versions you could do so, but now they just won't play when you choose the folder you dumped the voices into. Instead, you'll be greeted with the frustrating sound of silence anytime you choose that voice in settings. Add to this the annoying fact that new celebrity voices are updated onto your voices menu as a promotional thing, only to be automatically deleted after a certain amount of time, and you'll see why I was this close to downgrading my Waze version just to be able to get whatever voice when I could get it! However, after ages of poking at this I finally figured it out: it's just a simple file flag change.
SHORT/GEEK VERSION
*I'm assuming you're rooted.
*Download whatever celebrity voices you want (the folders and their mp3s) into a desired location on your phone for copying and/or backup
*Using the Waze app, download a useless foreign voice and make a note of the name
*Copy all the mp3s of your desired celebrity voice
*/data/data/com.waze/waze/sound/[The useless foreign voice folder]/Paste (overwrite) the desired celebrity voice mp3s over the mp3s already there
*Long press any mp3 you just pasted in/Select all/3-dot menu icon/"Change SE context"/"Enter context manually"
*Manually type in:
Code:
u:object_r:app_data_file:s0:c512,c768
*Press OK
*Change all mp3 permissions to "rw-------" (0600)
*Rejoice!
THOROUGH/NON-GEEK VERSION:
*I recommend being rooted, since you have to be able to access, copy, and edit Waze system files with a root explorer app. How to root your phone is beyond the scope of this short tutorial. Good luck.
*Using Root Explorer, make a separate folder to hold your downloaded voices wherever you want in your file system (I just made a folder called "Celebrity Voices" within /data/data/com.waze/waze/sound, and Waze doesn't screw with it, but it will delete any other celebrity/promotional folders it wants from the "sound" folder on your next update).
*Download whatever celebrity voice you want onto your phone, and copy/paste it into the folder you just made.
*Now do the following: [your new folder]/long press any mp3 file/3-dot menu icon/"Change SE context". You should see a popup window that has something like this under the file name:
Code:
"Current value: u:object_r:app_data_file:s0" (This is why the files DON'T work)
*Now do the same in your Waze "sound" folder /data/data/com.waze/waze/sound/(Any currently working Waze voice folder like "eng_nathan" or whatever)/long press any mp3 file/3-dot menu icon/"Change SE context". Now you should see something like this:
Code:
"Current value: u:object_r:app_data_file:s0:c512,c768" (This is what the files have to be to work)
*Waze won't allow you to just make your own folders you can choose within the app voice menu, because it's not programmed to (this is why it won't screw with the folder you created- it doesn't know it's there!). So, you'll have to copy your desired voice files into an already existing voice folder that you know you won't use and paste them over its files- something like Serbian or another foreign language you don't speak and know you'll never need. Basically you're hijacking the folder Waze uses and replacing it with voices you want.
*First you have to go get those voices on your phone: Waze app/left swipe screen/gear symbol(preferences or settings)/Voice directions. Choose a voice you know you won't need (Example: I use "Deutsch - Mica" for my Arnold Schwarzenegger voice), and tap it to start downloading. This should take you back to the main screen where you'll see the red text showing you the download progress. Wait until it's finished.
*Now go back to your downloaded voice folder: Long press any mp3/Select all (a little square icon)/COPY
*Go into /data/data/com.waze/waze/sound/[the folder of your new Waze voice you just downloaded]/PASTE (choose "yes" if asked to overwrite existing files).
*Long press any mp3 you just copied over/Select all/3-dot menu icon/"Change SE context"/"Enter context manually"
*Manually type in:
Code:
u:object_r:app_data_file:s0:c512,c768
*Press ok. Watch the magic happen. Congrats, you just "hacked" your Waze voices. And also, you just earned a geek point. Score!
*Double check under the mp3 file names that the permissions are set to "rw-------". If not, do the following: Long press any mp3/Select all/3-dot menu icon/Permissions/Only check "Read" and "Write" next to Owner, and set all others to unchecked/Press OK.
*Now go to Waze and see if your celebrity of choice gives you directions.
NOTES:
*Highly recommended- make a text note somewhere on your phone to keep track of what voices are the same as the celebrity voice you hacked in. Download enough voices and you'll find yourself saying "Dammit, was C3P0 the "Gabriela" voice or the "Shahdan" voice?"
*Create a text file somewhere on your phone with the correct SE Context code pre-written into it so you can copy/paste it into any new voice's SE Context Manual entry line(cause that crap's just a pain in the butt to type out on a phone).
*Don't bother screwing with the SE Context of the files BEFORE you copy them into your Waze "sound" folder, because the copy/paste process breaks the changes and you'll just have to do it over again. This one took me a while to figure out.
*I personally never had to reset my phone- I found I could use my new voices immediately.
*Individual mileage may vary, and the folders may not be labeled exactly as written here. Use your imagination, and good luck.
*Don't worry if you change your mind about someday needing some foreign language as originally provided by Waze that you replaced with Morgan Freeman or something. Who knows, you might want to learn Spanish someday! You can always just delete that folder, go back into Waze, and download it as before, and it will start fresh. Just don't forget to back up Morgan...
*You can manipulate these voices in a sound editor and do whatever you want with them as long as the mp3 filenames stay exactly the same as before. If you're a sound geek this can be way fun.
*Anytime a new voice shows up on your phone, copy and paste it over into your personal celebrity voices folder and label its folder so you can identify it easily later on, because they'll just hijack it away from you when its promotional period is over. Just copy them into another foreign language folder as above and it's yours whenever you want.
*I have tried to find all the voices you can download from other websites, but I know there are others out there. I just received and nabbed Santa Claus ("Coca-Cola shill" version) and Liam Neeson (promotion for "The Commuter") on my phone as well. My all-time favorite: T-Pain...
*I am using:
Samsung Galaxy Note 4 running Lineage OS 14.1
Root Explorer 4.1.6
Waze 4.25.0.2
Merry Christmas, or whatever holiday you celebrate at this time of year!
Regzim
Hi Regzim
I used your method on a rooted phone (which is not mine!) running Kitkat and it worked like a charm.
My own phone isn't rooted and runs Nougat in which there is no access to Waze files. So, I'm looking for a method to use the voice recording feature in Waze on a rooted phone to use an old voice pack and then share it with my non-rooted phone (take a look at this thread)
Any idea?
P.S:
I'm testing a stupid workaround. I installed Waze in Bluestacks and tried to record prompts one by one using stereo mix. The problem is that there's a weird noise on the recordings in Waze. However, there's no noise when I used a voice recording app (Easy Voice Recorder) in Bluestacks.
Do you have any clue why it is so?
Thanks
Making this work on non-rooted phones...
Hi Sedhadi!
Awesome, I'm glad it worked- I was holding my breath wondering if this was a "my phone only" kind of thing or that maybe they changed the file flag differently for different phones or something. :laugh:
Hmmm... making this work on a non-rooted phone? That's a tricky chestnut to crack. I think I've seen that thread before in my quest to figure this out, but it seems like most of those methods they mention are older pre-Waze update methods that don't take the SE context into account and are thus no longer useful to newer Waze versions...
I don't have time to sink my teeth into it thoroughly at the moment, but my mind immediately goes to ADB (Android Debug Bridge) push/pull. Basically it allows you to poke around and manipulate files in your phone through a terminal interface on your computer using command line prompts. I'm not sure off the top of my head whether you need to be rooted to use ADB as well. Ironically I don't have any non-rooted phones around to test this out on, so I can't help you there without a thorough web search. However, I couldn't find anything on how to change SE context using ADB, and since getting this to work hinges completely on the SE context, the prognosis doesn't look good. Do a search for "all things android se android commands" for now and see what you can find, but when I get some free time I'll poke around and check out what I can discover as far as method goes.
Also FWIW, there are some apps out there that root your phone for a limited time, so you may be able to get that going just long enough to manipulate the files as needed, but you'd have to work fast, and have Root Explorer ready to go. Disclaimer: some of the temp root apps can be adware bombs, so caveat emptor...
As for the weird sound, I'd need to hear it to be sure but I'm thinking it may be the normal "noise floor" problems (electronic interference, background noise, crappy mouthpiece, etc.) that come with recording anything using your phone's built-in microphone/mouthpiece. Is it a buzzing, a hiss, or what? For those reasons I'm not a big fan of the "record your own directions" function on Waze, as the sound quality mostly comes out pretty crappy in the end because of the technical limits of the mouthpiece.
Regzim
---------- Post added at 03:24 AM ---------- Previous post was at 03:21 AM ----------
P.S., just realized I didn't know what Bluestacks was until I looked it up- since it's an emulator, you might be getting weird noises because of your COMPUTER'S microphone/ audio input device. What kind of mic do you have?
Regzim
Hi Regzim
Thanks for taking the time to answer.
In that Reddit thread, it was suggested to replace a recorded voice files with a celebrity voice pack instead of doing so to a useless foreign voice. I tested that method and it worked and I could hear the prompts while navigating but the share button didn't activate (which means Waze realized I manipulated the files).
If we find a workaround (like changing SE context (which I tried to pull off on these files as well but failed)), then there will be no need to come up with a solution for non-root phones because we can share the celebrity voice as a recorded voice.
P.S: I didn't use any real mic. I used Stereo Mix (aka What You Hear) feature of Windows. I played the celebrity's voice in VLC and started recording in Waze in Bluestacks. So, no extra noise actually adds up to the source sound. But the result in Waze is awful.
It seems there's something wrong with Waze while recording.
Regards
Another bump. Would love to have an easy solution for non-rooted phones.
Waze voice packs
Did you guys made any progress on this?
I have a non rooted Samsung s8 so I am interested as well. Please find a work around! Thank you.
This is not the right section. It needs to be posted in the module section. However what you're requesting doesn't need Xposed AT ALL.
Is this still working for some?
I downloaded the bottom three voices in Waze and followed the instructions (not for the first time, new phone).
The permissions and SE context are correct, but still no sound.
joekeee said:
Is this still working for some?
I downloaded the bottom three voices in Waze and followed the instructions (not for the first time, new phone).
The permissions and SE context are correct, but still no sound.
Click to expand...
Click to collapse
Still works!
But for me it only works when I choose a language that doesn't contain a _ in the foldername.
Like Croatian, Swedish, Turkish.
Regzim said:
*Long press any mp3 you just pasted in/Select all/3-dot menu icon/"Change SE context"/"Enter context manually"
*Manually type in:
Code:
u:object_r:app_data_file:s0:c512,c768
*Press OK
*Change all mp3 permissions to "rw-------" (0600)
*Rejoice!
Click to expand...
Click to collapse
Thanks for putting this up. I was bummed when they changed it and would love to get celeb voices back. I'm rooted and got up to copying and overwriting the files into the foreign Waze sound folder, but I don't get anything like "Change SE context". I originally copied the files with ES File Explorer and didn't see anything like that, so I specifically tried Root Explorer free version and still no option like that. I also can't see the rw permissions (I CAN see and modify those permissions in ES). Is that something that's only in the paid version?
No "Change SE context" in menu
raulrocks said:
Thanks for putting this up. I was bummed when they changed it and would love to get celeb voices back. I'm rooted and got up to copying and overwriting the files into the foreign Waze sound folder, but I don't get anything like "Change SE context". I originally copied the files with ES File Explorer and didn't see anything like that, so I specifically tried Root Explorer free version and still no option like that. I also can't see the rw permissions (I CAN see and modify those permissions in ES). Is that something that's only in the paid version?
Click to expand...
Click to collapse
Hmmm... I wonder if this is a "my phone/OS only" thing. But this doesn't make sense since the SE context thing is within Root Explorer, not exclusive to my OS. Not quite sure if I've got the free version of Root Explorer (Version 4.1.6) as well, but these options were in my version when I long pressed the files/3-dot menu/Change SE context near the bottom of the drop-down menu. At the time of writing this the free version is up to 4.4.3 FWIW.
Gotta admit I'm flummoxed on this one. There's just too many variables from phone to phone to explore here, but an app is an app - either it has the same menu items on every phone or it's not the same version or app!
Some ideas off the top of my head that may be worth chasing down:
*The free version may not provide the SE context option (to be honest I can't remember whether I am on the free version, or if ages ago I cleverly "got hold" of the paid version if you follow my meaning). Maybe bite the bullet and buy the app (or "get hold" of it somehow)?
*An upgrade to Root Explorer somewhere along the line maybe broke or eliminated this option. This is not out of the question since I read all the time about loyal users *****ing about how their app used to "be perfect" until the latest stupid upgrade changed everything for the worse. I never have this problem since I sideload every app into my phone manually and turn off automatic upgrades on all apps, because I can't stand upgrades breaking and/or ruining perfectly good working apps. Sure, my apps are sometimes a little behind the times, but they freaking work and keep working until I outgrow them or something better comes along. Maybe find version 4.1.6 somehow and see what happens?
Sorry if none of this works and if I can't be of more help than this. Bummed to think only an elite few may be able to do this, because I hate it when software nazis lock up options that allow us users to customize.
Hope you crack this, and please share if you do!
Regzim
Thanks for the additional info, especially the version!
I had installed the first "Root Explorer" that was free, but it has different version numbers. Based on your info it looks like the one you have (by Speed Software) call their pro version Root Explorer and their free version simply Explorer. And yes indeedy do you need to the paid version to view/edit root files. I happened to come across the current version and everything you said fell into place.
Even though it was 3:40 am, ran down to my car (3 flights) and was ELATED and did a happy dance when 3PO said "In 0.1 miles turn left master"!
HOOOOO-raaaaaayyyy!!!! And thanks, triple thumbs up! :good::good::good:
Hi
I rooted my Xperia Z5 (7.1.1) yesterday. This method doesn't seem to be working on my phone. All I get is silence.
Any idea what the problem may be?
Sedhadi said:
Hi
I rooted my Xperia Z5 (7.1.1) yesterday. This method doesn't seem to be working on my phone. All I get is silence.
Any idea what the problem may be?
Click to expand...
Click to collapse
hai,
this method still work for me.
i use 1+5.
Regards
barani kumar said:
hai,
this method still work for me.
i use 1+5.
Regards
Click to expand...
Click to collapse
Hi
What's your Android and Waze version?
Sedhadi said:
Hi
What's your Android and Waze version?
Click to expand...
Click to collapse
Hai
I'm using 1+5 with OOS beta 35 (Pie)
Waze 4.52.3. 4
Im been using this method for long time.
And I do clean install every few month.
So Im very confident this method work for latest ver.
Regards.
Do I have to be rooted to do this?
I have a s8 and can't find the Waze file can someone help

Guide to turn peeking (pop up notifications) off

Hello people,
So I've had the OnePlus 6t for a week now and one of the things that really bothered me was that I could not figure out how to turn peeking off.
Some people in here and on other forums have commented that it's not possible to turn pop up notifications off in Android Pie. I was somehow not completely convinced of that.
After being pestered some more with the pop ups while streaming, I started going through every single setting and finally found the way to turn them off.
So you go to Settings -> Apps and notifications -> See all apps.
Then you select the app to which you want to turn off pop ups.
Then go to notifications and look for a checkbox that says either "all notifications" or just "notifications" or something similar. This is different for each app. Some apps will have multiple such checkboxes.
You then click on behavior. This is where you can change the way the notifications are delivered to you.
You can choose to receive notifications completely silently or just select "make sound" to receive notifications without peeking. Basically, any selection apart from the first one which says "make sound and pop up on screen" will turn off peeking / pop up notifications.
I apologise if this is common knowledge or if this was already posted but I had a hard time figuring this out and wanted to share it.
works good for apps that have the notification channels coded in.... however Google's own hangouts app doesn't which is just silly...
for those who don't want it on at all, the ADB method is probably best because its universal
use the following adb command:
adb shell settings put global heads_up_notifications_enabled 0
Reboot your phone. Done!
edit...link added
https://forum.xda-developers.com/android/general/howto-4-to-disable-heads-notifications-t3197660
dadoc04 said:
works good for apps that have the notification channels coded in.... however Google's own hangouts app doesn't which is just silly...
for those who don't want it on at all, the ADB method is probably best because its universal
use the following adb command:
adb shell settings put global heads_up_notifications_enabled 0
Reboot your phone. Done!
edit...link added
https://forum.xda-developers.com/android/general/howto-4-to-disable-heads-notifications-t3197660
Click to expand...
Click to collapse
Fancy seeing you here sir?
I really hate these retarded peek / pop up notifications.
Biggest crap ever, and no easy way to disable them (i.e. in Telegram).
I only saw the option in the "gaming mode" of the OP, there I can disable that ****.
The other option seems to be via the adb shell, which is super retarded as well.
That's the main reason I use android to have full customization, that's Google for implementing retarded features without the option to disable them.
If anyone found an easy way to get rid of it, that'd be great.

Categories

Resources