Related
Decided to try this app out due to reports of it being able to help battery life in android by controlling various functions of the hd2.
I'm trying out a simple test profile as described on a link I found via google, which is simply to enable wifi when the browser is launched.
I've set up the profile, the contexts and actions but cannot get them to work and I'm not sure why.
For instance, when I press the test button on the tasks screen, I get a message appearing to say "Wifi on" as intended, a vibrate, and when I later check in wifi settings it says it's scanning for a network so has clearly been enabled. That's great, but then when I click on Apply and close the Tasker app, nothing happens when I launch my browser.
Likewise I set one up just as a test for bluetooth, a message, and a vibrate to come on when I launch the camera. Again, when I press 'Test' on the action screen for this profile it all works fine, but when I try it for real by opening the camera app, nothing happens.
I'm assuming I've missed out one obvious step somewhere but for the life of me I can't see what, even though it must be staring right at me. I've set a message up as the first action in both cases so it's not just that they can't connect to wifi/bt etc.
Can someone help point me at what I'm doing wrong, or haven't done please? I hope this is in the right sub forum as well - apologies if not.
Many thanks
Are you talking about WM? If yes, you are in the wrong sub forum
Probably best to post the profile, the contexts and actions.
Tasker runs just fine on my HD2, so I'm guessing there is a problem with the script.
No it's Android, don't even know if there is a wm version!
KPN - Can I just export the scripts or something? Can't see a setting for that (sorry!) just an import option for profiles. Or do I need to install some screen grab app and just show the screens?
I just know this is going to turn out embarrassing when I get the solution!
I've tried a few different profiles now though, even one that does nothing except pop a message up when I open a browser. Same thing - works fine when I press the test button on the tasks screen, but does nothing outside the app itself.
KPN is my network provider
as described on a link I found via google
Click to expand...
Click to collapse
maybe post the link?
otaku888 - Sorry, I was distracted by my mrs while I wrote that! Duh.
The first one I tried was via a link to the Tasker website where it describes the following:
Example Profile
Contexts:
(Application) Browser
(Time) 9:00 - 17:00
Enter Task:
(Setting) WiFi On
Flash: "Happy Browsing"
Exit Task:
Flash "Goodbye"
When the application Browser is started betweeen 9:00 and 17:00 WiFi is automatically enabled and "Happy Browsing" flashes up briefly.
Click to expand...
Click to collapse
Now I tried that, and have since tried even simpler ones but no joy other than with the test button.
I see I can download ready made profiles from the app itself, so I might get and test one to see if A) they work for me and B) they can highlight what is wrong with my ones.
Cheers!
All sorted now, thanks for the assistance.
Cret said:
All sorted now, thanks for the assistance.
Click to expand...
Click to collapse
you managed to get it working?
I have the same problems with application contexts - no good (on desire hd)
I have a few questions and they are probably answered here but I'm at work so its very hard tor me to get on my phone.
- is their a way to get android market on a KF even if its not rooted? I really would just like to install apps that are not in the amazon market. A new launcher,etc. Do you have to be rooted to install apps from android?
- What is side loading apps? I keep hearing people talk about this? What is it for?
- is there a way to text people from my KF? If so can anyone tell me a good app?
- how can I change the amazon keyboard to say swiftkey or something?
- any way to play movies on the KF? Could I drop a mkv, avi, divx, etc. movie from my pc onto my kindle? Or could I stream it to my kindle somehow?
- last question to now...is there a way to improve the touch screen response? I have to repeatedly touch icons, links and whatnot. I thought I saw an app that improves the KF screen?
Thanks everyone for the help, its greatly appreciated.
bal1985 said:
I have a few questions and they are probably answered here but I'm at work so its very hard tor me to get on my phone.
1) - is their a way to get android market on a KF even if its not rooted? I really would just like to install apps that are not in the amazon market. A new launcher,etc. Do you have to be rooted to install apps from android?
2) - What is side loading apps? I keep hearing people talk about this? What is it for?
3) - is there a way to text people from my KF? If so can anyone tell me a good app?
4) - how can I change the amazon keyboard to say swiftkey or something?
5) - any way to play movies on the KF? Could I drop a mkv, avi, divx, etc. movie from my pc onto my kindle? Or could I stream it to my kindle somehow?
6) - last question to now...is there a way to improve the touch screen response? I have to repeatedly touch icons, links and whatnot. I thought I saw an app that improves the KF screen?
Thanks everyone for the help, its greatly appreciated.
Click to expand...
Click to collapse
1) No. Market needs root to install. Some other launchers work without root, but you now have to side load them. You can add other non-Amazon apps in many cases, but without root, you can't use the Android Market, so you would need to side load them.
2) Copying the APK install files via download or via usb or other means.
3) The Kindle Fire is not a phone, there is no radio in the device so no text messaging. You can use things like Google Talk but you need root to install it. There are some web based txt stuff, but that is not really on the device.
4) Need root to do this
5) There are other video players that will do this. Like MX Video player
6) Not really.
6 In particular is starting to get on my nerves. I think its an OS/Kernel issue because tapping stuff elsewhere seems to be ok, but that bar is a headache. Hit back 5x and you see it light up each time.
Also I dont know if its dolphin browser or what but a lot of the times I tap a typing area like google search, after 2-3 letters it just hides the keyboard.
Also I've been having more issues where you click a typable area and start typing, but nothing shows. Keyboard is showing recommended words, but none will actually show on the screen.
Oh, also if you're watching a video on a site, good luck moving the time bar. Sometimes I have to press and hold my finger 2-3 seconds for it to trigger.
Seems to be a little worse since 6.2 imo.
Once the kindle is rooted and the entire market is installed does the kindle act like an android phone? Do you get the android home screen? With cm7 does your tablet act just like phone obviously without gos and so on.
bal1985 said:
Once the kindle is rooted and the entire market is installed does the kindle act like an android phone? Do you get the android home screen? With cm7 does your tablet act just like phone obviously without gos and so on.
Click to expand...
Click to collapse
The market is just an app that you use to get more apps.
It will still look and feel like an out of the box kindle fire.
And last I recall the market wont show up in the standard kindle launcher, so no one would even know it was there.
You have to take additional steps to even utilize it.
CM7 would make it act like an android device. there are tablets with CM7 so it has nothing to do with phones. Gos I assume is gps, and some tablets have that so it isnt phone only.
Hi,
Please refer to the article below. It will give you a deeper understanding of what rooting is and some tweaks you can do to the unit.
http://www.terracode.com/KindleFire/KF_Review_and_Tweaks_P1.html
If you have google voice linked with your Sprint number, you can send and receive texts via Google Voice
I have the Market installed but for some reason there are tons of apps missing for the market. Is their way to fix this?
Apps like Yahoo Fantasy Football to Google Maps or Google Earth are not there.
bal1985 said:
...
- is there a way to text people from my KF? If so can anyone tell me a good app?
...is there a way to improve the touch screen response?...
Click to expand...
Click to collapse
I think you can send/receive a limited number of text messages as well as make /receive calls with a free Google Voice account. I have not tested this with the Kindle Fire, so someone else may correct me.
There is an app called TouchScreen Booster that may help you adjust your screen sensitivity.
the following is from an other thread i don't remember (thanks to them !)
additional settings in build.prop:
# Rendering User Interface With GPU
debug.sf.hw=1
# Increase overall touch responsiveness
video.accelerate.hw=1
windowsmgr_max_events_per_sec=150
debug.performance.tuning=1
MAKE BACKUP COPY !!! - CAUTION WITH MODIFYING BUILD.PROP !!!
if your not sure - leave it !
i made this settings and i'm satisfied ...
Go to Kindle Fire browser Google search for "applanet". Under the link will be on the left "familiar interface" I tried that one first and it didn't work. On the right of it is one called "Version". I clicked that one and it directly started downloading an app. Tap the upper left part of the screen where the notifications are and when it is done downloading tap on its notification. It will install. (prior to this you need to go to settings - device and turn on download from unknown sources) install it and it creates an app called Applanet Market. Go to the Amazon market and search for ADW ex. Download that. You may find apps on Applanet that are not in Amazons.Search for any application you want. Like youtube, earth, gmail, whatever. When you're done playing with applanet hit your home key. It will give you a choice of ADW or stock. Check off the default box and choose ADW. Go to menu at bottom and go to ADW settings. Advanced. Set columns to 6 and rows to 6 and return back. At the bottom middle you have the ADW 3 button controller. I opened the app drawer (middle button) and dragged the Kindle Fire launcher to home screen and then long pressed it and dragged it over the area left of the appdrawer button. It will stick here and with it you can get to the stock KF home screen. But whenever you tap home, you will go to ADW. If you ever want to change that, go to settings. Applications. ADW. And at the lower area you can choose to release the default.
Sent from my DROIDX using Tapatalk
krelvinaz said:
5) There are other video players that will do this. Like MX Video player
QUOTE]
In response to this and OP's earlier question, MX is good. Moboplayer is good too, but I've been having full screen problems with Mobo. On streaming, you can use Dropbox or Sugarsync (I use SS, there is a thread on it in the apps category). For streaming though, I've found that MX doesn't work great and Mobo is better, which is why I use that for streaming, although I still have the full screen issues. If you stream using SS, just make sure that file is encoded in a quality to get a good stream. There is also another thread on how to setup files to do this in apps category as well.
Click to expand...
Click to collapse
Is applanet back up?
Sent from my Kindle Fire using Tapatalk
Okay, today I decided to see if I could get Doom III working, and after a bit of trial and error, I have figured it out.
First off, visit this post: http://forum.xda-developers.com/showthread.php?t=1970071
You want to download the RC2 file that is attached to the first post.
You also need to follow the instructions on where to put your Doom 3 files Just copy the base directory to (including the base directory:
Code:
/sdcard/DIII4A
or
Code:
/storage/emulated/0/DIII4A
You also need to put the gl2progs that is in the RC2 file you downloaded, to the following directory (including the gl2progs directory:
Code:
/sdcard/DIII4A/base
or
Code:
/storage/emulated/0/DIIII4A/base
Do not install the apk that comes with the RC2 file, we are not using it.
Download https://play.google.com/store/apps/details?id=com.n0n3m4.DIII4A via your favorite way.
Or use: http://apps.evozi.com/apk-downloader/?id=com.n0n3m4.DIII4A
Install, and run. Takes a lot of memory, so i suggest your reboot if you've had xbmc open or a lot of apps/games.
Only settings I change is in Graphics to 1080p. If you have a 720p TV, then I suggest you do a Custom of 1280x720.
It does NOT find my mouse, so I do not turn that option on.
Correction to the gamepads & the menu info I had here before. On the Amazon Game Pad the Right Stick controls the mouse on the menus and R1 button is a mouse click. The back button will bring up the menu and activate the right stick as mouse while in game.
Graphics Settings: If you want to have dynamic lighting on, don't have Disable lightening checked (Under General Tab when you first load the game) and in Graphics set Screen resolution to Half (0.5x). MSAA: 1x (None). This is will give you okay framerate while having the Doom 3 feel that is important.
I used Foldermount to move the data to my USB Thunbdrive, worked fine.
Amazon Gamepad Controls:
Left Stick for Forward & Back, and Strafe Right & Left
Right Stick to look around in game, and control mouse in menu
R1 Button is Shoot/Punch/Action in game and Mouse Press in menu
L1 Button is Prev Weapon (I think, i changed my defaults by accident and not sure)
A Button is crouch
X Button is Jump
Y Button is Flashlight
B button is Reload Also the Settings button is apparently reload
Back button brings up menu
You need to set a PDA button, I had mine be the Left Stick (if you press down, it's a button) because the settings button didn't work, and I couldn't assign it to the Dpad, nor triggers.
Have fun!
Nice going.
Now make Doom Legacy run and then SRB2 so we can play it on Fire TV as well.
Seriously,SRB2 needs to be ported to Android already.
retroben said:
Nice going.
Now make Doom Legacy run and then SRB2 so we can play it on Fire TV as well.
Seriously,SRB2 needs to be ported to Android already.
Click to expand...
Click to collapse
There is source code & a linux port of it, so should be doable. I haven't programed in like 2 decades, but have been considering getting back into it. All in all, might not even need that much programming to get working, since their are linux ports of it.
the SRB2 does look pretty cool. Who knows that the future holds?
It was already done three years ago in two YouTube vids,but cybocat never released the app.
https://www.youtube.com/watch?v=FA7vyOy09Q8
https://www.youtube.com/watch?v=g9Em27OsREY
I would love to see it finally arrive for Android.
By SRB2 you mean that Sonic game?
I've never seen it or played it. From witch konsole is it from?
Sent from my Nexus 4 using XDA Free mobile app
Yes,it is called Sonic Robo Blast 2.
I was amazed by the graphics the first time I played it with an old PC running good ol' Windows XP.
It started on Windows,Linux,and Mac from modifying Doom Legacy.
Since then,it has been ported to Dreamcast,Wii (twice),PS3,and PSP (working on Android via PPSSPP but limited and crash prone).
All of these,yet still no released Android port.
It could most simply be done from the Linux version with someone knowledgable enough that can port it.
Srb2 on android would absolutely be wonderful ima follow this thread in hopes of seeing it In the future.
Recently I reset/wiped my AFTV because I got new storage for it. During this time I got myself a new install of Doom 3 on my computer, set all the settings to the lowest possible/turned stuff off, then I used that installation of Doom 3 for my AFTV Doom 3. Reason for this is because the previous version of Doom 3 I used (BFG edition) was also modded up and other stuff to look great on modern rigs.
So with the new settings and install, I found that I was able to set the Graphics to 1 (instead of .5), and keep the advance video setttings all turned on (cept for AA) in the Game System settings (inside the game, not in the loader). Game plays fine with way better graphics then my original post.
Will be updating the first post in this thread with info, maybe later tonight.
Hi Guys,
I managed to root my FireTV a few days back, and yesterday decided to look at the voice search to see if I could use it for other things.
After reversing some code, I found the actual voice search is handled by com.amazon.vizzini.apk
The SearchOverlay.class has this piece of code, which calls back to the amazon fireTV UI SearchResultsActivity upon completion with the search result returned as a string.
I replaced the fire TV UI with my own code, which receives the search text, and then sends a JSON rpc to KODI's web interface, and brings KODI to the front after the search is completed.
Here is a video of it in action.
http://youtu.be/hpgKci_gJYY
android studio project
http://uptobox.com/ccykod7zua1l
mirror
http://www107.zippyshare.com/v/mAhl3UuM/file.html
***** I have a FireTV v1 updated to fire os 5 ******
I have no idea if this will work on older versions of software.
To make it work you will require ROOT, and you will have to uninstall or move the existing fireTV amazon UI.
Reason for this is that the vizinni.apk calls back to
localIntent.setComponent(new ComponentName("com.amazon.tv.launcher", "com.amazon.tv.launcher.ui.SearchResultsActivity"));
So your activity has to be in that package, and called SearchResultsActivity.
The only other way to possibly get round this would be to modify the vizinni.apk to call a different package instead, but then voice search wouldn't work on the amazon UI anyway. I wasn't really bothered about the amazon UI working myself which is why I did it the way I did.
I just moved the original system/priv-app/com.amazon.tv.launcher/com.amazon.tv.launcher.apk to /system then installed my code via android studio.
mount -o rw,remount /system
mv /system/priv-app/com.amazon.tv.launcher/com.amazon.tv.launcher.apk /system/
You will also need to change KODI's settings to enable web interface control on port 8080.
On my setup it was .. system.. services.. webserver.. and tick the box that says "Allow control of kodi via http" and make sure the port is set to 8080.
edit: 07/07/2016
I did start work a few months back on an Xposed module (works but not 100%), I was going to add a settings page but I think there was issues with xposed on android version that the fire tv runs on, due to permissions etc.
You can set a prefix in the code (currently hard coded to KODI) so if you say " kodi star wars" it would pass the param of "star wars" to kodi.
If you just say "star wars" without the prefix it would pass this to the normal amazon UI.
If anyone wants to take it further, it's attached on the link below.
http://uptobox.com/ensqll4a7r65
Mick
Thats actually pretty great.
Conventional wisdom was that both voice recognition and response "results packaging" was done server side - and the only return query you could get were preexisting amazon database references - not the result of the initial voice recognition.
I've actually read that multiple places - but as it turns out, no one had bothered reversing the process I guess.
Major props and thank god for overlays containing strings... Finally - that microphone might not be so useless after all..
Next step - implement it to interface with google search. (Weather in ...)
edit: Actually - there are three interesting usecases I can think of on top of my head...
1. Launch other Apps (maybe even with "fixed Keywords (App 1 f.e. would work edit: "Number 1" delivers better results. )" if App names arent known to Amazon) - so thats text>launcher app - see if sphinx02 has any interest in coding that as part of Firestarter..
2. google search (Whats the weather in.. ) text>google search app (if possible)
3. direct text input as seen in the POC video
edit 4. forward to Amazon - not to "break" their implementation
This could be realized by a quick 4 way select screen (just confirm with the direction button) after you select the string in the overlay.
great find and implementation. would love see more expansion as above post mentions. Are you planning to share fire tv UI code?
I was playing with voice search strings and found that Amazon tends to strip out "Google" in front of search queries -so instead of "Google how is the Weather tomorrow" only "How is the weather tomorrow" will get returned.
But - Alexa as a trigger word will be returned fine, so - I vote for using "Alexa" as a trigger word to forward all search queries to the google search app.
Ok - maybe not - but conceptually, this would be a great "work of art".
An even better idea than Harklekinrains' would be to check the foreground app and do different things based on that. For example, if Kodi is open it could send the intent to Kodi. If the Fire TV launcher is open it could fall back to default functionality, etc. Simulating keystrokes could also cover 99% of the other applications. I'm excited for this. It really makes the Fire TV so much less of a novelty.
I've just updated the original post with a copy of the android studio project, and a few more details.
Mick
Great mate,thanks! gonna check it out soon!
One question (as im not firm with intents and stuff): aint there a possibility to listen for intents sent to the amazon ui and catch them? Personally, i dont care too much about it right now as im using nothing but kodi, but maybe some day when wanting to use prime or similar stuff?
dafunkydan said:
Great mate,thanks! gonna check it out soon!
One question (as im not firm with intents and stuff): aint there a possibility to listen for intents sent to the amazon ui and catch them? Personally, i dont care too much about it right now as im using nothing but kodi, but maybe some day when wanting to use prime or similar stuff?
Click to expand...
Click to collapse
I don't think so as the actual code in the vinizzi apk is as follows:
Intent localIntent = new Intent();
localIntent.setComponent(new ComponentName("com.amazon.tv.launcher", "com.amazon.tv.launcher.ui.SearchResultsActivity"));
localIntent.putExtra("identifier", null);
localIntent.addFlags(402653184);
localIntent.putExtra("term", str);
localIntent.putExtra("text", str);
localIntent.putExtra("source", "VOICE");
localContext.startActivity(localIntent);
So basically when it receives the voice search response from amazon's server, it's starting the activity com.amazon.tv.launcher.ui.SearchResultsActivity from package com.amazon.tv.launcher
Mick
Integrating the search attempt based on the previous foreground app would mean that "voice search" could never "initate a new attempt". This would prevent the "lets just ask google, or lets launch an app - impulse use" of the feature. Still - in the long term it might turn out to be the right approach - f.e. if
"People tend to use the the google search only lets say "half a dozen times", and in the majority of cases just want text input in Kodi" Also - without having a select screen with "four (dont make it too many) predefined "use options"" discoverability is pretty non existent. People would have to read readmes to find out which interactions are supported.
Also Amazon wants you to "be able to always reach the Amazon content search from anywhere" - so, political implications.
Also - each time a new app would want to integrate the voice to text feature - they would have to contact the devs of this project - if you dont use "just text input" as a default in the "use the previously open app as an indicator of intent" approach. So make sure you default to "just text input" in that case. (Amazon launcher > forward query to Amazon (do not break functionality), ....)
Dont implement it as a mixed approach though as "Kodi is open most of the time" probably for most people - and the intent (message) gets "confusing".
--
What you probably shouldnt do - regardless, is to use "trigger words" as an "indicator of intent" - because Amazon can start blocking them. "Number 1" is probably generic enough so they wont try to block that - but in principal, they can. Also Amazons "voice to text" engine is optimized for "short phrases" - the longer your input query gets the more prone to errors their results become. Leave the actual "voice input" as "natural" as possible (dont embed logic there). Imho.
I'm in the USA and uptobox.com is not available in our country.
I want to give the source a look and see what I can do to contribute.
Can you put it on github or somewhere else?
Much appreciated.
kratosjohn said:
I'm in the USA and uptobox.com is not available in our country.
I want to give the source a look and see what I can do to contribute.
Can you put it on github or somewhere else?
Much appreciated.
Click to expand...
Click to collapse
I've just uploaded it to zippyshare too. Link added to original post.
Mick
It would be nice if this could be generic way of entering text in any app, similar to the FTV Remote App that has keyboard support. I am surprised Amazon has not done this already. If you are in a text field voice search would fill in the text, else it can continue with normal Alexa functionality letting you " always reach the Amazon content search from anywhere". Should be an easy solution for Amazon to implement, not sure if it could be added with the progress here, and it would really make the voice control so much more useful.
Hey Mick, as im still very exited about that (so frustating to enter searchphrases with a dpad...), i thought about what your great find could develop to. I hope u dont get me wrong, as i unfortunatly cant contribute any programming (if u need something made with tasker let me know ), its not that i want to demand anything - rather share my thoughts or ideas...
- I think its a good thought not to 'blow it up' by adding many keywords, make it more complicated, and avoid amzn to lock features down. even if it may be an abstract fear. I think with a well-structured menu in kodi, all apps one will need to start are just 2-3 clicks away.
- if i got it right, xposed could hook into every module and alter it, right? so basically it should be possible to avoid to exchange the amazon ui and/or alter the vizinni.apk,but just modify the SearchOverlay.class? wouldnt it be (on top) the most convenient way to decide wether one is on e.g. Amazon Prime, or on kodi, and either hand over the result to the original module, or hand it over to kodi?
So, please understand my post as a mixture between sugestions and questions, not as a demanding 'please make it how i want it asap'. Im really excited about your finding, appreciate your sharing, and want to contribute what i can do - unfortunatly its rather thoughts and suggestions. Cheers mate!
Great Work !!! I totally understand this is for amazon Fire products only. My question is would we be able to port for generic Android TV box like nVidia Shield which also has mic capability and comes with root support.
Good job @is0-mick it's great to see you accomplish something that Netflix doesn't even want to be bother with on their app.
harlekinrains said:
No you dont understand. You havent even read or understood the first posting - but you have bought another device and now want others to move in your direction on your behalf.
Click to expand...
Click to collapse
Seriously mate if XDA bothers you so much, you need to take a break from it for your own sanity!
fach1708 said:
Seriously mate if XDA bothers you so much, you need to take a break from it for your own sanity!
Click to expand...
Click to collapse
No, I really don't think he needs to take break, his argument is completely understandable. This is not a Shield forum (btw before we make judgements, I own both devices). We need to get this fixed for one device, before even mentioning whether other devices are an option.
is0-mick said:
To make it work you will require ROOT, and you will have to uninstall or move the existing fireTV amazon UI.
Reason for this is that the vizinni.apk calls back to
localIntent.setComponent(new ComponentName("com.amazon.tv.launcher", "com.amazon.tv.launcher.ui.SearchResultsActivity"));
So your activity has to be in that package, and called SearchResultsActivity.
The only other way to possibly get round this would be to modify the vizinni.apk to call a different package instead, but then voice search wouldn't work on the amazon UI anyway. I wasn't really bothered about the amazon UI working myself which is why I did it the way I did.
Click to expand...
Click to collapse
Is it not usefull for this to create a xposed mod? I thought xposed was made for this...
Perhaps you should talk with rbox in his thread about a integration into version 1.5 of his mods, look here.
is0-mick said:
I just moved the original system/priv-app/com.amazon.tv.launcher/com.amazon.tv.launcher.apk to /system then installed my code via android studio.
mount -o rw,remount /system
mv /system/priv-app/com.amazon.tv.launcher/com.amazon.tv.launcher.apk /system/
Click to expand...
Click to collapse
So does that mean, while you are using your proof-of-concept you can not use the normal Launcher-UI?
Really great your work! I hope we got more
Sadly I am with my FireTV-Stick (hardware-Rooted-superSU) and my FireTV box gen1 (hardware-Rooted-superSU+custom-recovery+unlocked-bl)on the old FW. I wait for custom roms.
Greetings by Idijt
EDIT:
I forgot to ask you something. Did you got the kind of search-request back?
Can you see if amazon-voice-rgn knows if it is a app or a video or a moviestar?
This looks pretty cool since I don't like typing the name of the movie in the search box... now I can just speak it.
As a novice I have one question, You wrote:
is0-mick said:
I just moved the original system/priv-app/com.amazon.tv.launcher/com.amazon.tv.launcher.apk to /system
Mick
Click to expand...
Click to collapse
The code I downloaded was in .RAR format not .apk. Do I need to covert it to .apk or rename it to .apk before replacing the original?
I've not rooted my device yet so I haven't looked at the file structure, but I'd be willing to root to get this feature. OR is the adding of this code better done by someone other than a novice?
Thanks
carpenter940 said:
The code I downloaded was in .RAR format not .apk. Do I need to covert it to .apk or rename it to .apk before replacing the original?
Click to expand...
Click to collapse
It's the source code. You have to compile it and create the apk with AndroidStudio.
Remapping Android TV remote buttons
In this guide I will explain a way to remap to the shortcut buttons on the remotes of Android TV devices which cannot simply be remapped by e.g. Button Mapper.
I will use the Walmart Onn Box as example for this guide, but it should also work for devices like the Xiaomi Mi Box.
The general idea is to install an Android automation app which analyzes the system logs of you device and starts your desired apps when it sees the button press log messages.
Enabling ADB
To install the automation app and give it permissions it needs, you must enable developper mode on your Android TV device and connect to it from your computer.
Those two turorials should explain you how to do it:
https://www.xda-developers.com/how-to-sideload-apps-android-tv
https://www.xda-developers.com/install-adb-windows-macos-linux
Easy way to control your Android TV device
Since it is very cumbersome or impossible to do everything with the remote control I recommend to use ScrCpy.
This allows you to easily control your device from your computer using mouse and keyboard.
After installation you can connect to your device with adb and enter 'scrcpy' in your console. You should instantly see the screen of your TV on your computer.
Installing 'Automate'
The app I recommend for the automation is called 'Automate'. It is free, but sadly can't be directly installed from the app store on Android TV (because of compatibility).
To avoid this limitation you can download the APK from e.g. Apkmirror and install it manually via ADB.
adb install .\path\to\the\downloaded\apk\Automate_v1.32.6.apk
Click to expand...
Click to collapse
While you are at it you can also give the app some privileges which it needs later to read the system logs and to start the apps.
adb shell pm grant com.llamalab.automate android.permission.SYSTEM_ALERT_WINDOW
adb shell pm grant com.llamalab.automate android.permission.READ_LOGS
Click to expand...
Click to collapse
To start Automate you need a launcher that can see sideloaded apps. I recommend the X-plore File Manager since it's also a good file manager and can be easily installed from the app store.
( There are also other alternatives like 'Tasker' instead of 'Automate', but since that is not free and activation doesn't work properly on a sideloaded app I can't recommend that. )
Configuring 'Automate'
After starting Automate you can create a new 'flow'. The goal of that flow is to monitor the system logs, and start your desired apps everytime it sees a button press message.
That can be done mainly with a 'Log await' node that contains following configuration:
Tag: WindowManager
Message: .*interceptKeyTq keycode=(\d+).*
Priority: Debug
Logged message (array): keycode
Click to expand...
Click to collapse
You can then use "Expression true?" nodes to check for the found value in keycode (e.g. for the Live TV button) ...
Formula: =keycode[1] = "172"
Click to expand...
Click to collapse
... and start your desired app with "App start" nodes.
Package: com.google.android.tv
Click to expand...
Click to collapse
An example of a full flow can be found here: Remap Onn. Android TV remote buttons
Conclusion
After setting all this up the apps should start when you press the buttons.
However the original app (or its installation view) also starts before it, so if you press the back button you will return to that app instead of the previously running app. To avoid that just use the home button instead.
The Automate app will not automatically start if you reboot your Android TV device. If you want that you can activate that in the settings: 'Run on system startup'. But make sure that everything works perfectly before you do that!
If you get stuck in a loop where you can't use other apps and also can't open and configure Automate anymore, you can use this command via ADB to disable all flows:
adb shell am broadcast -a com.llamalab.automate.intent.action.STOP_FLOW -n com.llamalab.automate/.StartServiceReceiver
Click to expand...
Click to collapse
Double_A_92 said:
To start Automate you need a launcher that can see sideloaded apps.
Click to expand...
Click to collapse
As a one-off, in case you don't want to install another app, you can always run:
Code:
adb shell am start -n com.llamalab.automate/.FlowListActivity
KenMacD said:
As a one-off, in case you don't want to install another app, you can always run:
Code:
adb shell am start -n com.llamalab.automate/.FlowListActivity
Click to expand...
Click to collapse
I went to Settings > Apps > See all apps and then scrolled down and clicked 'Show system apps'. You can find Automate, and then click open to launch.
Thanks for your guide. Now my Xiaomi Stick 4K remotes Netflix, Prime Video and Patchwall buttons are changed to open other apps.
Can you make Automate flow work like Button Mapper having also double click and long press open different apps.
stapreedi said:
Can you make Automate flow work like Button Mapper having also double click and long press open different apps.
Click to expand...
Click to collapse
That's probably not possible, since this is a very janky way that relies only on the android system text logs. Maybe the double click could be done in some complicated way, but the long press definitely not.
Thank you for your reply.
I asked same thing at Reddit AutomateUser and Automate developer ballzak69 answered but he did not tell how to modify flow:
https://www.reddit.com/r/AutomateUser/comments/uo5c00
Your guide is popular:
https://www.reddit.com/r/MiBox/comments/uo1m4s
Thanks for Idea. I have acer remote with netflix, youtube, primevideo and tiki live button. How to find keycode for these button in my acer remote because given keycode don't works
omdhar said:
Thanks for Idea. I have acer remote with netflix, youtube, primevideo and tiki live button. How to find keycode for these button in my acer remote because given keycode don't works
Click to expand...
Click to collapse
Connect the output of the "Log await" with the "Toast show" node, and the output of that back into the "Log await". That will create a little message popup with the keycode everytime you press a button.
Double_A_92 said:
Connect the output of the "Log await" with the "Toast show" node, and the output of that back into the "Log await". That will create a little message popup with the keycode everytime you press a button.
Click to expand...
Click to collapse
Thanks. It will be great if you could share flow example to generate keycode in message popup. It will also help many other here too.
omdhar said:
Thanks. It will be great if you could share flow example to generate keycode in message popup. It will also help many other here too.
Click to expand...
Click to collapse
Download this file Remap Onn. Android TV remote buttons and do what Double_A_92 told. Use your tablet or phone to modify flow file because its easier. When you modify flow file on your tablet or phone then you have to use example Aida64 for app package names on your tv. Use Send files to TV for what app name says. You can do it from Automate apps share icon.
Hey, thanks for the detailed guide! i did everything (i think )but when i hit start its stuck on the “Log await” i used your shared flow cause i got the same box.
Any ideas?
harel013 said:
Hey, thanks for the detailed guide! i did everything (i think )but when i hit start its stuck on the “Log await” i used your shared flow cause i got the same box.
Any ideas?
Click to expand...
Click to collapse
Hmm weird. Try deleting the flow and download it again so you have a fresh copy.
Also make sure to configure which apps you want to start. In my shared flow they are just random apps that I had installed. Maybe that causes problems if they aren't actually installed on the system.
what is different between this way and others way like "Button Mapper" or tvQuickActions?
oldman20 said:
what is different between this way and others way like "Button Mapper" or tvQuickActions?
Click to expand...
Click to collapse
This is for devices where the vendor buttons are not even registered as button presses by the system. So if you tried to use ButtonMapper or other apps, it wound't let you select the button and instead always open the app written on the button.
But yeah, if ButtonMapper works for your device that's obviously a much better way of doing it.
Double_A_92 said:
This is for devices where the vendor buttons are not even registered as button presses by the system. So if you tried to use ButtonMapper or other apps, it wound't let you select the button and instead always open the app written on the button.
But yeah, if ButtonMapper works for your device that's obviously a much better way of doing it.
Click to expand...
Click to collapse
thank, it got it!
btw, can i ask this?
How to check succeeded in transforming tv box into an Android TV ? or just download app from Google Play without issue?
I have the entire thing written out and plugged in, the only issue im having now is "Syntax error in regexp pattern near index1" i cant figure out through google what im doing wrong.
NarkosNakan said:
I have the entire thing written out and plugged in, the only issue im having now is "Syntax error in regexp pattern near index1" i cant figure out through google what im doing wrong.
Click to expand...
Click to collapse
Make sure you really wrote
.*interceptKeyTq keycode=(\d+).*
With all the dots and asterisks....
Double_A_92 said:
Make sure you really wrote
.*interceptKeyTq keycode=(\d+).*
With all the dots and asterisks....
Click to expand...
Click to collapse
Thank you very much, i couldn't see the first period at all in the main post~
The last problem im having is finding key codes, i don't understand how we find those for the app.
NarkosNakan said:
The last problem im having is finding key codes, i don't understand how we find those for the app.
Click to expand...
Click to collapse
Connect the output of the "Log await" with the "Toast show" node, and the output of that back into the "Log await". That will create a little message popup with the keycode everytime you press a button.