Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve info extraction (mainly by extracting more data) #4

Open
rmmbear opened this issue Sep 3, 2017 · 0 comments
Open

Improve info extraction (mainly by extracting more data) #4

rmmbear opened this issue Sep 3, 2017 · 0 comments

Comments

@rmmbear
Copy link
Owner

rmmbear commented Sep 3, 2017

Helper should be able to extract much more information than it does currently when doing device dumps / reports. Detailed scan in CLI and device tab in GUI will show less data to not bog down the user with unnecessary details.

Currently helper uses the following info sources

  • getprop (shell command) - contains all the information from build.prop and more!
    • device name, manufacturer, brand, etc
    • screen density
    • OS version, API level, etc
    • CPU architecture, supported ABIs, chipset
  • dumpsys (shell command)
    • 'SurfaceFlinger' dump - GPU model, GL version, supported extensions
  • files in /proc/
    • /proc/cpuinfo - chipset name / type
    • /proc/meminfo - total RAM amount
  • files in /sys/devices/system/cpu/
    • /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq - max frequency of CPU (or rather its first core)
    • /sys/devices/system/cpu/possible - amount of possible active cores, i.e. how many cores the CPU has
  • printenv (shell command)
    • paths of external (primary) and secondary storage
  • ls /system/bin
    • list of available shell commands
  • PackageManager - pm (shell command)
    • device features / capabilities
    • installed apps
    • path of apk files
  • WindowManager - wm (shell command)
    • size and density of the display

Apps that might serve as 'inspiration':

  • AIDA 64 (mobile app) by FinalWire
  • Hardware Info (mobile app) by JFDP Labs
  • CPU Z (mobile app) by CPUID
rmmbear added a commit that referenced this issue Sep 4, 2017
- changed the name of ext_storage to internal_sd_path and
  secondary_storage to external_sd_path
- added *_sd_path variables to getprop
- added 'CPU Features' to cpuinfo
rmmbear added a commit that referenced this issue Sep 24, 2017
Added:
- kernel version (info->os->kernel version)
- GPU vendor (info->gpu->vendor)

corrected the source command for dumpsysy_services (was a string
instead of 1-tuple)
rmmbear added a commit that referenced this issue Nov 20, 2017
Also adds alternative source for serial number

all available abis are now mwerged, instead of being replaced by
the value in 'abilist'. Which means that there will be duplicates.
I have yet to resolve that.
rmmbear added a commit that referenced this issue Apr 10, 2018
While the previous incarnation of this module was a horrible mess,
the ability to perform data extraction lazily is pretty neat.

With this rewrite I decided to go back to implementation that
focuses on getting the data from the given section, and not about
exhausting the data source. The potential for lazy extraction is
greatly limited--although I could just force Device to keep the
output from data source until all functions that could have used
it have done so, but it feels wasteful and just _wrong_ to do so.

The laziness potential could be improved with some planning and
better segmentation of different sections of extracted info, but
I think the focus for now should be making sure that it actually
works across as many devices as possible, and finding out ways
for cutting the amount of data being extracted at once to only
the needed minimum.

Also: this breaks everything!
rmmbear added a commit that referenced this issue Sep 18, 2018
- new info source SH_CPU_DATA
- add WiFi as notable feature
- reorganize surfaced variables
- minor fixes and improvements
rmmbear added a commit that referenced this issue Jul 30, 2019
- changed the name of ext_storage to internal_sd_path and
  secondary_storage to external_sd_path
- added *_sd_path variables to getprop
- added 'CPU Features' to cpuinfo
rmmbear added a commit that referenced this issue Jul 30, 2019
Added:
- kernel version (info->os->kernel version)
- GPU vendor (info->gpu->vendor)

corrected the source command for dumpsysy_services (was a string
instead of 1-tuple)
rmmbear added a commit that referenced this issue Jul 30, 2019
Also adds alternative source for serial number

all available abis are now mwerged, instead of being replaced by
the value in 'abilist'. Which means that there will be duplicates.
I have yet to resolve that.
rmmbear added a commit that referenced this issue Jul 30, 2019
While the previous incarnation of this module was a horrible mess,
the ability to perform data extraction lazily is pretty neat.

With this rewrite I decided to go back to implementation that
focuses on getting the data from the given section, and not about
exhausting the data source. The potential for lazy extraction is
greatly limited--although I could just force Device to keep the
output from data source until all functions that could have used
it have done so, but it feels wasteful and just _wrong_ to do so.

The laziness potential could be improved with some planning and
better segmentation of different sections of extracted info, but
I think the focus for now should be making sure that it actually
works across as many devices as possible, and finding out ways
for cutting the amount of data being extracted at once to only
the needed minimum.

Also: this breaks everything!
rmmbear added a commit that referenced this issue Jul 30, 2019
- new info source SH_CPU_DATA
- add WiFi as notable feature
- reorganize surfaced variables
- minor fixes and improvements
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant