Closed raubwaldy closed 8 years ago
I am not sure if this is your problem (right now I don't have device with CM 12 to test it), but generally on Android 5 you need to install sepolicy-inject tool because of more strict SELinux policy (you can build it by yourself with Android NDK or download prebuild binaries from GitHub or XDA-Developers.com). Let me know if it helped...
I'm a User and got almost no Idea how thinks work on a technical level. I'm not able to build anything by my self. I don't know how to install the binaries. - Is there any .apk file i could download from F-droid or any other safe source?
You can just copy sepolicy-inject
executable from right folder in the archive (depends on your device architecture, most probably armeabi-v7a
or if you have really old device then armeabi
) to /system/xbin
folder on your device. You need root for this and remount your /system partition RW (read-write) before copying.
If you have USB debugging enabled on your device, just connect it to your computer and issue these commands:
adb push /path/to/sepolicy-inject /sdcard/sepolicy-inject
adb shell
You will enter into shell on your device, while you are there issue these commands:
su
mount -o remount,rw /system
cp /sdcard/sepolicy-inject /system/xbin/sepolicy-inject
chmod 755 /system/xbin/sepolicy-inject
sync
mount -o remount,ro /system
And you are done! SnooperStopper now should work.
I will include sepolicy-inject
binary into SnooperStopper in the future, so you will not have to do this, but it will take some time...
If you are going to do this, please let me know if it worked for you. I would like to know if it is really this issue (missing sepolicy-inject) or if there is some other problem on CM 12...
Thanks for your replay, but to be honest I feel uncomfortable to copy any files in to my system. Its my working system and I would rather prefer to wait for a working release.
I have published new version 1.1 which includes sepolicy-inject. Could you try it?
Now I can open the "change encryption password" section. Unfortunately I have a pattern instead of a password. It looks like that the app does not support paterns for the "current password"
You can translate pattern to number. Enter the dots as a sequence of numbers, where 1 is top left and 9 is bottom right. Please try it and let me know if it worked. I want to add pattern input method to SnooperStopper in the future, but it will not be soon...
Btw. CM 12 doesn't have system UI for changing encryption password anymore? It has been included in CM 11. That's a shame :-(
I believe this is caused by SnooperStopper not declaring permission
android.permission.ACCESS_SUPERUSER
as per CM's SuperUser framework: https://plus.google.com/103583939320326217147/posts/T9xnMJEnzf1
@cptMikky According to http://su.chainfire.eu/#updates-permission ACCESS_SUPERUSER permission is deprecated and completely ignored in Android >= 5.0. SuperSU is closed source (and I don't like it for this reason), but it is still most widespread su framework on Android. Are you sure that su in CM is now enforcing it?
CM uses it's own open source SuperUser framework, not chainfire's SuperSU. I didn't notice the deprecation for Lollipop and I have yet to find out what changes made this happen. A quick search shows deprecation only in SuperSU, not in SuperUser (but I will look into this further).
Nevertheless, at least in CM11 enforcement is on by default but can still be turned off. I had the exact same problem and I can confirm that disabling the option in SuperUser settings root rights are not revoked instantly but instead a SuperUser dialog is presented with red warning that SnooperStopper does not declare the permission.
@cptMikky Can you please test it on CM12?
I'm afraid I can't - don't have a CM12-compatible device :(
I am using cm12.1 on an oneplus one and the app is working with and without superSU. I have not tested the changing of the password, but the phone does reboot after wrong attempts.
I can confirm that this is still an issue on CyanogenMod 13.0-20160110-NIGHTLY-shamu (Nexus 6) with version 1.2 of SnooperStopper from the F-Droid repo. It was previously working with CM 12.1 nightlies for my phone. When I upgraded from the 12.1 nightly to the 13.0 nightly, my phone was set to require the encryption password to boot and the pattern to unlock. After the upgrade, my phone needed the password to boot, but had no security on the lockscreen. When I run the application, it asks for superuser permissions, which I grant it, and tell it to remember my choice. When I hit "Change encryption password", it tells me that it can't get superuser access, and aborts the operation.
New version 1.3 supports CyanogenMod 13 (I have tested it on Nexus 5). Sorry that it took that long...
I use Cyanogenmod Version 12-20150830-NIGHTLY-tsubasa on a Xperia V. (Android 5.0.2). On CM root -access is there by default.
But whenever I hit the button "change encryption password" I get the error: "cannot get superuser access,exiting"