VirtualSensor
VirtualSensor is a module built on Xposed that creates several sensors on devices which do not have them. It does sensor fusion using the values from the accelerometer and the compass which are the two main requirements for this module.
There are currently 5 sensors emulated :
TYPE_ROTATION_VECTOR
TYPE_GYROSCOPE
TYPE_GEOMAGNETIC_ROTATION_VECTOR
TYPE_GRAVITY
TYPE_LINEAR_ACCELERATION
Being the most useful sensor for many applications, the gyroscope is the main sensor this project is about.
This minor version fixes the module for Nougat devices.
See the changelog of v1.5.1 for the more information on what has changed for the major version 1.5.
Finally a new release after (quite) a while. This release should fix the majority of bugs encountered on current and previous versions of Android.
With the precious help of people on Github, the cardboard hook has been (hopefully) improved.
The overall stability and reliability should be better now.
This release will stay marked as beta until relevant and good feedback is received, to please head over to Github if you can and report issues if any (or add to the exising issues to check wether they still exist)
- Fixed the module, previous version broke it because of proguard minify, do not use version v1.4
Hotfix for v1.4
Below is the v1.4 changelog:
- Added a check for already existing native sensors so that they don't get overridden by the module
- Now checks the values of the accelerometer and magnetic sensor against their accuracy. This means that the output values contain less noise without loosing too much precision
- Added a simple GUI to quickly get informations about the module. This part also calculates the values the gyroscope should return and compares them against the one the module actually returns
- Some hooks are now made on higher-level API (public available functions for apps), which means that specific device code should no longer break them
- Fixed a recurrent exception (ConcurrentModificationException)
- Added a check for already existing native sensors so that they don't get overridden by the module
- Now checks the values of the accelerometer and magnetic sensor against their accuracy. This means that the output values contain less noise without loosing too much precision
- Added a simple GUI to quickly get informations about the module. This part also calculates the values the gyroscope should return and compares them against the one the module actually returns
- Some hooks are now made on higher-level API (public available functions for apps), which means that specific device code should no longer break them
- Fixed a recurrent exception (ConcurrentModificationException)
- Fix the mRequiredPermssion field not available on SDK < 20
Hotfix #2 for v1.3
Please see v1.3's changelog.
- Fixes the issue with SDK <= 18 where mStringType doesn't exist in the Sensor class
Hotfix for v1.3
Please see v1.3's changelog.
- Sensors are now added in a proper way. They should no longer accidentally override existing sensors / cause compatibility issues
- All gyroscope axes are fully functional !
- If it didn't work before for you on JellyBean-Lollipop, try now, it might (fixed the check for initialisation of SystemSensorManager)
- Started to work on a new filter system for the gyroscope mainly
- Fixed compatibility with SDK18-22 (Android JellyBean 4.3 - Android Lolipop 5.1)
- Added a little more log
- Calculation for the gyroscope is now based on the calculated gravity sensor data, which (should) makes it work as intended in any orientation
- The virtual sensors now have a little more information in the created Sensor class, just to make sure this isn't an issue
Don't forget that you can easily report issues on GitHub (https://github.com/Frazew/VirtualSensor/issues) or xda !
Hotfix for v1.2 to avoid crash on JB devices
- Fixed compatibility with SDK18-22 (Android JellyBean 4.3 - Android Lolipop 5.1)
- Added a little more log
- Calculation for the gyroscope is now based on the calculated gravity sensor data, which (should) makes it work as intended in any orientation
- The virtual sensors now have a little more information in the created Sensor class, just to make sure this isn't an issue
Don't forget that you can easily report issues on GitHub (https://github.com/Frazew/VirtualSensor/issues) or xda !
- Added support for all SDK versions from SDK16 to SDK23+, this means all android versions starting from Jelly Bean should be supported
- Added a lot of new sensors : TYPE_ROTATION_VECTOR, TYPE_GEOMAGNETIC_ROTATION_VECTOR, TYPE_GRAVITY and TYPE_LINEAR_ACCELERATION
- Still no support for Pokémon GO though, working on it
- Some exceptions fixed
- Code refactored a lot
Hopefully this version will fix the issues many were having !
Hotfix: fixed null value when trying to get the accelerometer minDelay
- Added support for all SDK versions from SDK16 to SDK23+, this means all android versions starting from Jelly Bean should be supported
- Added a lot of new sensors : TYPE_ROTATION_VECTOR, TYPE_GEOMAGNETIC_ROTATION_VECTOR, TYPE_GRAVITY and TYPE_LINEAR_ACCELERATION
- Still no support for Pokémon GO though, working on it
- Some exceptions fixed
- Code refactored a lot
Hopefully this version will fix the issues many were having !
Initial release