Author Topic: Having issues with Tincore. Any better button-to-touch mapping apps out there?  (Read 3269 times)

LSS932 (OP)

  • *
  • Posts: 29
Roughly two months ago I switched from W3D to Asus Zenfone 2 coupled with an external bluetooth gamepad controller, as the old phone started becoming unstable probably due to battery issues.

I've been using Tincore for the time being as it works perfectly as intended after configuring (for stuffs that I used to do with Snail's KeyAdapter), until recently I find myself having issues with it. Notably that for some reasons, even after I minimized/deactivated Tincore (when it shouldn't register any touches anymore), the keymapper would continue holding a touch in the middle of the screen making the touchscreen mostly unusable and effectively locked myself out of the lockscreen, as I'm running AOKP (7.1.1), and I'm required to swipe up then enter my PIN on the lockscreen to unlock the device.

For that issue I haven't really used Tincore for a while as I'm not currently doing something that needs it. Anyway, the problem can be avoided by either adding the controller as a smart lock so the phone unlocks itself when I attach and turn on the controller (to avoid locking myself out), or by turning off Tincore entirely after use. Neither way is ideal.

So honestly I really don't know if there are any better alternatives that are safe to use and, if better, doesn't require me set SELinux permissive (as currently I don't have anything else that requires it on my phone).
« Last Edit: August 16, 2017, 08:38:42 am by LSS932 »
L.S.S.

robyse7en

  • *
  • Posts: 24
Game keyboard apk

LSS932 (OP)

  • *
  • Posts: 29
Game keyboard apk

Um... I did remember using it during Xperia Play days, with older versions (GameKeyboard). I recall it's IME powered (usable only when its IME is actively selected), which means I can't do any on-screen typing while using it. Tincore has no such restriction.

It seems the current ones, GKM Touch, may not have the above restriction but suffer from the same issue of having to set SELinux permissive (In Tincore's case, the system simply couldn't detect any devices when SELinux is Enforcing).
It's better if that can be avoided. And I worry about its support for Nougat as the latest version was released in 2015. (NB, the Snail W3D's built-in touch mapper works out-of-box without requiring SELinux permissive, or there would be even more complaints)

There seems to be something like SEPolicy injection on XDA (no idea on the depths of the concepts yet) which might be helpful on getting things work without having to set SELinux permissive globally (not to mention Google has been banning whatever that can set SELinux permissive on Play Store for a while, for the reason of "lowering device security"). (EDIT: It seems current root tools like SuperSU and Magisk have tools to patch SELinux policies as well, supolicy and magiskpolicy respectively)
« Last Edit: August 17, 2017, 02:42:16 am by LSS932 »
L.S.S.

DroidX2

  • *
  • Posts: 428
Hmm, seems you have used the recommended mappers already. Sometimes I wonder if the Much Mapper would work if installed on another device. It wasn't the most robust, but it worked great! I noticed in my last days with the W3D that Tincore was acting strangely. The experience wasn't as seemless as it once was. I can't explain it as accurately as you have, but it was harder to set up recently.

I think the dev, or one of the devs that built Tincore lurks this site under the name Tincore. Hopefully he sees this thread and can help. Besides Gamekeyboard and Tincore, I haven't used any other mappers to test. Have you tried using an older version of Tincore?

LSS932 (OP)

  • *
  • Posts: 29
You said Tincore is becoming harder to set up recently, has there any "regressions" with Tincore for the last few versions?

Supposedly there was a "beta" channel for Tincore in Play Store. But even after signing up for it, there were no versions past the latest one.

Again, I've no idea why Tincore can generate stuck touches when waking up even after minimizing/disabling it. (Technically if I minimize/disable the keymapper, no more touches should be generated)

Lastly, is it possible and practical to inject SELinux policies needed by Tincore for necessary operations like detecting devices, so I can use Tincore while keeping SELinux Enforcing? If the policies are heavily device-specific, a guide for how to manually inject them would be also helpful.
L.S.S.

skelton

  • *****
  • Posts: 6832
I use tincore on mu shield tablet with nougat with no issues. I use SELinux permissive. It's not a problem to have SELinux permissive, there are no potential risks. There is more risk just being rooted that with SELinux policies. So I would put SELinux permissive and should work fine, unless it has issues with your device or gamepad for some reason.
The more AOSP the rom the better, and I see you are using AOKP which is heavily modified from standard AOSP, so maybe that rom is the issue.
Retired

DroidX2

  • *
  • Posts: 428
You said Tincore is becoming harder to set up recently, has there any "regressions" with Tincore for the last few versions?

Supposedly there was a "beta" channel for Tincore in Play Store. But even after signing up for it, there were no versions past the latest one.

Again, I've no idea why Tincore can generate stuck touches when waking up even after minimizing/disabling it. (Technically if I minimize/disable the keymapper, no more touches should be generated)

Lastly, is it possible and practical to inject SELinux policies needed by Tincore for necessary operations like detecting devices, so I can use Tincore while keeping SELinux Enforcing? If the policies are heavily device-specific, a guide for how to manually inject them would be also helpful.

None that I could tell. It's just that the settings wouldn't stick, or the profile wouldn't load with the game. But that may have been due to the way Snail devices handle physical controls. I haven't used it on any other than a Snail device.

I agree with Skelton's idea. If possible, try a less modified ROM.

LSS932 (OP)

  • *
  • Posts: 29
You said Tincore is becoming harder to set up recently, has there any "regressions" with Tincore for the last few versions?

Supposedly there was a "beta" channel for Tincore in Play Store. But even after signing up for it, there were no versions past the latest one.

Again, I've no idea why Tincore can generate stuck touches when waking up even after minimizing/disabling it. (Technically if I minimize/disable the keymapper, no more touches should be generated)

Lastly, is it possible and practical to inject SELinux policies needed by Tincore for necessary operations like detecting devices, so I can use Tincore while keeping SELinux Enforcing? If the policies are heavily device-specific, a guide for how to manually inject them would be also helpful.

None that I could tell. It's just that the settings wouldn't stick, or the profile wouldn't load with the game. But that may have been due to the way Snail devices handle physical controls. I haven't used it on any other than a Snail device.

I agree with Skelton's idea. If possible, try a less modified ROM.

Sorry, but I don't use Snail devices right now... (I did in the OP mentioned that I'm now using Asus Zenfone 2 with an external bluetooth controller). Back then with Snail devices, up to W3D, everything works well even after I heavily modded the system with Xposed.

Maybe it's possible that AOKP has some underlying incompatibility with Tincore, as I originally did not observe the issue (maybe I did not pay attention) when I was running Resurrection Remix (which I eventually ditched due to it often reboots itself at night, which is not the case for AOKP). Maybe I'll try something different, but the main reason I chose AOKP was because of the OMS and the fact that it's still being built.

Guess I'll check out the most recent AOKP build for my device and try flashing it and do some further tests to find out if the problem is indeed with the ROM not Tincore but that's not likely to be certain.

I use tincore on mu shield tablet with nougat with no issues. I use SELinux permissive. It's not a problem to have SELinux permissive, there are no potential risks. There is more risk just being rooted that with SELinux policies. So I would put SELinux permissive and should work fine, unless it has issues with your device or gamepad for some reason.
The more AOSP the rom the better, and I see you are using AOKP which is heavily modified from standard AOSP, so maybe that rom is the issue.

I'm no expert on what SELinux controls and what SELinux polices can pose risks. For a while there used to be devices with custom kernels built with SELinux set permissive by default (around Lollipop, I think), but recently people started going against that idea. Safety Net might be a factor, but it seems Magisk Hide is able to keep SELinux settings from tripping it.

An example of working around the SELinux requirement would be Viper4Android, which used to require SELinux permissive, but not anymore, as by community demand, they seem to have created scripts that perform all the policy injections so the app can function properly with SELinux stay enforcing.

PS, there has been a script for Magisk that helps users setting SELinux permissive, but the developer stated that such should only be a last resort and recommended that users to "contact the app developer and try to work with them to isolate the necessary SELinux Permissions and have them injected into the SELinux Policy at startup".

He also stated that "Putting your device into Permissive Mode will essentially disable all of the operating system level security built into Android and allow any app in any context to do whatever it wants". I think he might be referring to apps with "really" malicious intents.
« Last Edit: August 22, 2017, 09:00:05 am by LSS932 »
L.S.S.

DroidX2

  • *
  • Posts: 428
Hey LS, I was browsing through XDA and stumbled on this. The issue you face is far beyond my knowledge, but this article talks of a toggle which might help.

https://www.xda-developers.com/selinux-switch-toggle-permissive/

LSS932 (OP)

  • *
  • Posts: 29
Hey LS, I was browsing through XDA and stumbled on this. The issue you face is far beyond my knowledge, but this article talks of a toggle which might help.

https://www.xda-developers.com/selinux-switch-toggle-permissive/

I saw that before... apparently there are various methods to set and keep SELinux permissive. (back then with Resurrection Remix it can be done from its settings menu, but this feature is not provided in AOKP), and I'm already capable of doing so (using SELinuxModeChanger 10.0 by mrbimc, can be found on GitHub).

The thing is that I wish if setting SELinux permissive can be avoided in the future for Tincore, since Tincore and potentially other key mapping tools are the only ones that require SELinux permissive I know right now (though this is in no circumstances related to the touch generation bug I'm having)...
L.S.S.