AppOpsXposed is a quick-'n-dirty module for the Xposed framework that restores the AppOps functionality on Android >= 4.4.2 by allowing AppOps to be launched again using the :android:show_fragment extra (this applies only to the Settings app, and only to the AppOpsSummary fragment). It also adds "App ops" in the native android Settings app for Android 4.3+. Why not just install XPrivacy? you may ask - read this post.
AppOpsXposed will never work on any Android version below 4.3! Why? Because - as the name implies - the module simply exposes "App ops", a feature that's hidden in Android's "Settings" starting with 4.3. The "App ops" interface you see comes directly from Google, not me!
If you're on Android 4.3, you can use this APK even if the Xposed Framework is not installed and/or your device is not rooted. In that case AppOpsXposed will simply launch AppOpsSummary - all other features ("App ops" header in "Settings", "App ops" button in "App info", fixed layout in AppOpsDetails) will not be available.
Source code is available on github (License: GPLv3+)
AppOpsXposed will attempt to add AppOps to your ROM's "Settings" app. Since a manufacturer's implementation of that app may be very different from stock Android, the module might fail to find a way to do so. In that case, I need the APK flle of your "Settings" app, so I can determine where to put AppOps. The location of AppOps is noted in the list below; if anything goes wrong, the module will place AppOps at the very end. As of version 1.7, the module provides a launcher icon in order to enable everyone to launch "App ops", even if their ROM is not yet supported.
Full support (i.e. with AppOps in the "Settings" app) is currently available on the following devices/ROMs:
- Stock Android, CM10, CM11, Sony Xperia: in "Personal" section
- Samsung: in "General" or "More" tab (right under "Apps")
- Sony Xperia
Need more info:
CHANGES IN 1.21
AppOpsXposed 1.21 introduces a new "Compatibility mode" (must be enabled in the module settings) that should allow the app to work on any device, regardless of the exact ROM version. It does this by using a standalone implementation of AppOps (copied from the google source code), instead of the implementation
of your "Settings" app. While this feature is not yet mature and for now offers little more than the original AppOps, you could use it if all else
Please note that this feature is still very beta, but my time is very limited at the moment, so I'm releasing it in the hope that it might fix
AppOps issues for some people.
WHAT APPOPSXPOSED IS, AND WHAT IT ISN'T
As the name implies, AppOpsXposed primarily exposes (i.e. enables) the builtin (but disabled) AppOps functionality as implemented by your ROM vendor/developer. AppOps consists of two parts: the interface you see, and the framework that does the real work.
This means that:
- Your ROM's implementation might be incomplete, or broken
- Your ROM's implementation might differ in functionality, compared to other ROMs
- The module's primary task is to get the builtin AppOps interface working
- The module's secondary task is to fix serious errors in your ROM vendor's AppOps framework that would otherwise severely limit the AppOps feature.
- Everything else (e.g. adding new features, especially to the framework part) is low priority stuff.
- I will not reinvent the wheel that is XPrivacy. If you need more fine-grained control, or more features, you're better of with that than AppOpsXposed!
READ BEFORE YOU POST
It might seem stupid, but before reporting a crash please try the following: uninstall AppOpsXposed, reinstall it, re-enable it in the Xposed Installer, reboot. I'm not quite sure as to why it helps, but sometimes it does.
If "App ops" doesn't show up in your Settings app, I'm gonna need its APK file! Don't just say "It crashes on device XYZ" - usually this kind of information is of no help at all. Starting with version 1.19, AppOpsXposed includes a simple bug report feature. Simply go to the module's settings and select "Build bug report", then send the created file via email (or upload it to Dropbox/Google Drive/whatever and post a link):
Post AT LEAST the following info:
- Android version (4.3, 4.4, etc.)
- Name and type (stock/custom) of ROM
- Logs: in the Xposed Installer app there's a "Log" section! A logcat would be even better.
***** When upgrading from a version before 1.12, uninstall AppOpsXposed first before installing this version; otherwise, the update will fail!*****
* Fix compatibility mode
* Added new compatibility mode (BETA)
* Fix crash on LG ROMs
* Attempted to fix wrong icon size on some ROMs
* WakeLock hack disabled on JellyBean for now
* Fixed version number (updates should work now)
* Fixed compatibility with some LG ROMs
* Fixed WakeLockFix (JellyBean currently broken)
* Updated icon in settings for non-AOSP ROMs
- Fixed some issues in Samsung ROMs
- Fixed issue in detection of CyanogenMod-based ROMs
- Added bug report functionality
* Added OP_BOOT_COMPLETED hack (must be enabled manually under "Hacks")
* Added WakeLock fix (must be enabled manually under "Hacks")
* Fixed crashes in CyanogenMod-based ROMs
* Now using a dedicated icon in Settings (thanks @Kickinpigeons)
* Added Spanish translation (thanks @Jose Artuņedo)
- Xperia only: more human readable info (e.g. "Run at start-up" vs "BOOT_COMPLETED")
- Fixed compatibility with Galaxy S5 settings app (grid layout)
- Fixed crash on Xperia KitKat ROMs
- Added OmniROM variant (no header in settings, only icon in "App info")
- Added variant for Sony KitKat ROMs with a switch in AppOps, as opposed to the drop-down menu found in 4.3 ROMs
- Fix crashes on Android 4.3
- Added module-specific settings (click module name in Xposed Installer's "Module" section)
- Launcher icon can now be hidden
- Added Korean translation by sdkoongchi@github
- This release should fix further crashes on recent cn11 nightlies
- Attempted to fix issues on recent cm11 nightlies - again
- Added Japanese translation (WedyDQ10@github)
- Hopefully fixed crashes on Xperia devices
- For now, on CM11 nightlies >= 2014-01-28 almost all features are disabled. AppOps can be launched via the launcher icon only.
- Fixed layout issue on Xperia ROMs.
- Hopefully fix crash on Sony stock ROMs
- On Android 4.3, AppOpsXposed now works as a launcher even if the Xposed Framework is not installed
- Fixed issue where AppOps could not be started from "App info"
- AppOpsXposed is now compatible with Sony Xperia devices
- Fixed AppOps details layout for languages where strings were much longer than in English
- Fixed error where AppOps could not be launched from "App info"
- "App info" now uses AppOpsXposed's icon instead of text
- Better detection of Stock vs. AOSP ROMs
- Added 63 translations of "App ops"
- New icon
- AppOps for a specific app can now also be launched from the "App info" page of an app
- The module should now work correctly on Sony (Xperia) devices
- Added launcher icon for ROMs where there's no icon in Settings
- Reverted sorting in AppOps to default for now
- Potential fix for HTC devices
- Sort entries in App ops alphabetically.
- Another attempt at fixing Samsung-related issues. "App ops" should now be listed below "Apps", wherever "Apps" may be
on your device.
- On Samsung devices with a tabbed interface in "Settings", "App ops" should now be displayed in the "General" tab only.
- Should fix issue where "App ops" was shown more than once in "Settings"
- Fixed Android 4.3 compatibility
- No longer allow module to be installed on Android versions before 4.3
- Add "App ops" in Settings app; thirdparty AppOps-launcher no longer required!
>>> DOWNLOAD LINK (github) <<<
*) This does not mean that this module re-enables the :android:show_fragment vulnerability in PreferenceActivity - it only adds AppOpsSummary to the list of allowed Fragments!