CPU Info provides information about Android device hardware and software

Overview

CPU Info (refactor-in-progress )

CPU Info provides information about Android device hardware and software. Most of the code is written in Kotlin but some old widgets are still in Java.

Get it on F-Droid Get it on Google Play

Still TODO

  • Unify architecture - add interactors and data providers
  • Replace layouts with Compose
  • Replace Travis
  • Replace RxJava with coroutines
  • Tests
  • Add benchmarks

License

Copyright 2017 KG Soft

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Comments
  • Current version not available in F-Droid Store

    Current version not available in F-Droid Store

    Dear team,

    when I take a look on google play store the current version is 4.4.2 in the F-Droid store the current version is 4.3.3.

    What's the reason for this gap? Is there a bug in the build process?

    Please fix this.

    Kind Regards,

    Krawei

    opened by Krawei 5
  • CPU monitor

    CPU monitor

    This app needs to have a status bar icon so that the user can look at the top of his/her device and see the CPU and battery temp., etc., in real time. Other similar apps offered elsewhere already have this all important feature.

    enhancement 
    opened by ghost 5
  • support: where can i see AES hardware support

    support: where can i see AES hardware support

    Is AES hardware support show somewhere? (not sure i'm not seeing because the application doesn't show or my devices are missing it)

    if not supported, can you please point me to new contributor docs?

    Thank you!

    enhancement 
    opened by gcb 3
  • [RFE] Design improvements of CPU view

    [RFE] Design improvements of CPU view

    Thank you very much for providing this useful piece of software!

    I would like to suggest a more structured design of the "CPU" view. Currently, it looks like this:

    ABI
    Cores
    	Core 0 [clock rate]
    	Core 1 [clock rate]
    	Core 2 [clock rate]
    	Core 3 [clock rate]
    	…
    Features [of core 0]
    CPU implementer [of core 0]
    CPU architecture [of core 0]
    CPU variant [of core 0]
    CPU part [of core 0]
    CPU revision [of core 0]
    Features [of core 1]
    CPU implementer [of core 1]
    CPU architecture [of core 1]
    […]
    

    There are two minor issues with this layout:

    1. It is quite verbose although it does not provide much information because most of the cores have the same properties
    2. There is no visual distinction which properties belong to which CPU.

    Some ideas on how to improve the user interface: a) Display the CPU properties block in a collapsed block indented below the clock rate, like this:

    ABI
    Cores
    	- Core 0 [clock rate]
    		Features [of core 0]
    		CPU implementer [of core 0]
    		CPU architecture [of core 0]
    		CPU variant [of core 0]
    		CPU part [of core 0]
    		CPU revision [of core 0]
    	- Core 1 [clock rate]
    		Features [of core 1]
    		CPU implementer [of core 1]
    		CPU architecture [of core 1]
    		[…]
    	+ Core 2 [clock rate]
    	+ Core 3 [clock rate]
    	…
    
    • Pro: easier to read, easy visual structure and attribution of properties to a core
    • Con: Needs expandable items

    b) Display a CPU core type for cores with identical properties (except the clock rate) like this:

    ABI
    Cores
    	Core 0 [clock rate]
    		Core type: A
    	Core 1 [clock rate]
    		Core type: A
    	Core 2 [clock rate]
    		Core type: B
    	Core 3 [clock rate]
    		Core type: B
    	…
    Core type A:
    	Features [of core 0, 1]
    	CPU implementer [of core 0, 1]
    	CPU architecture [of core 0, 1]
    	CPU variant [of core 0, 1]
    	CPU part [of core 0, 1]
    	CPU revision [of core 0, 1]
    Core type B:
    	Features [of core 2, 3]
    	CPU implementer [of core 2, 3]
    	CPU architecture [of core 2, 3]
    	[…]
    

    I'm currently using version 4.1.0 from F-droid store on Android 8.1.0.

    enhancement 
    opened by genodeftest 3
  • Copycat on Google Play

    Copycat on Google Play

    Hi @kamgurgul

    I found https://play.google.com/store/apps/details?id=smartsolutions.traffic.dot.info.cpuinfo on the Google Play Store from this developer. This guy just took your source code, added some ads in it and put it on the Store, without warning this is free software...

    As you are the owner of the source code, feel free to open a request to google here to remove this copy from the Store, if it's your wish ;)

    Don't forget to tell Google that:

    • The app is licensed under Apache V2 license and this guy is violating it;
    • He is falsely claiming he made the app;
    • Provide some screenshots of your own app.
    opened by Poussinou 2
  • show if have an encrypted partition

    show if have an encrypted partition

    Hey Hi great app :)

    the app show great info about your phone, i think one is left behind.... in the Android section, it should show if the android os have a encrypted partition. Similar to the option "Rooted Yes"

    enhancement 
    opened by John3 2
  • android studio 3.1.2 read time out

    android studio 3.1.2 read time out

    hi my friend, I think it's my IDE error, I have cloned your repository 3 months ago and it was successfully built, but I can't today. When I sync the project in android studio the " read time out" error occurs. However, even if I pull the latest codes it 's still the same problem. May be it's android studio's bug, could you give me a help

    `下午2:29 Outdated Kotlin Runtime Your version of Kotlin runtime in 'Gradle: org.jetbrains.kotlin:kotlin-stdlib:1.2.10@jar' library is 1.2.10-release-109 (1.2.10), while plugin version is 1.2.30-release-Studio3.1-1. Runtime library should be updated to avoid compatibility problems. Update Runtime Ignore

    下午2:31 Gradle sync failed: Read timed out Consult IDE log for more details (Help | Show Log) (2m 0s 704ms)

    下午2:33 Gradle sync started

    下午2:33 Gradle sync failed: Read timed out Consult IDE log for more details (Help | Show Log) (32s 52ms)`

    opened by renhuihhh 2
  • Logo/Icon proposal

    Logo/Icon proposal

    Hi good day! I would like to ask for your permission to propose a new designs of logo in your application/project. I would like to help projects in open-source .I would just like to propose new designs. Hoping for your positive response Thank You!

    opened by jbeguna04 2
  • Broken hardware

    Broken hardware

    Hi there, Would the app show broken hardware, as e.g. a nonfunctional Bluetooth module, which is physically available though. And if so, would the app tell me the altered status or can it just tell that the hardware is or is not available. Does it tell anything about functionality?

    Thanks and regards!

    opened by leohoppergit 1
  • Feature Request: Instruction Width + ABI of the OS

    Feature Request: Instruction Width + ABI of the OS

    Hello, I'd like to suggest to add Instruction width 32/64bit and ABI version

    • mips
    • mips64
    • X86
    • X86–64
    • arm64-v8a
    • armeabi
    • armeabi-v7a of the OS to the Android tab. Often APK sources offer a multitude of apks to choose from. For example Bromite Webview. This info would help to choose the right one. Also sometimes the ABI is an older 32bit one running on a 64bit capable CPU which is also good to know (think of Raspberry Pis).
    opened by cachius 1
  • crash on android below 5

    crash on android below 5

    Hi Tnx for this great app :) I have tested your app on lenovo A3300HV (stock android 4.4.2) it works fine in this tabs : CPU - GPU - RAM - STORAGE - SCREEN and this tabs are faulty : ANDROID - HARDWARE - SENSORS


    After opening each faulty tab, it shows exactly same error : error


    To reproduce this: run it on this android version if you have any device or just make an emulator with this version of android (api level 16 to 20) it must appear!


    So i checked output of logcat for ANDROID, HARDWARE and SENSORS tabs and saw something meaningful which were same (don't hestitate about that pid thing {6032}, thats a random number as process identifier for the OS and will be changed on every run):

     W  [ 6032] dalvikvm threadid=1: calling UncaughtExceptionHandler
     E  [ 6032] AndroidRuntime FATAL EXCEPTION: main
     E  [ 6032] AndroidRuntime Process: com.kgurgul.cpuinfo, PID: 6032
     E  [ 6032] AndroidRuntime java.lang.NoSuchMethodError: android.net.wifi.WifiManager.is5GHzBandSupported
     E  [ 6032] AndroidRuntime 	at com.kgurgul.cpuinfo.features.information.hardware.HardwareInfoViewModel.o(SourceFile:24)
     E  [ 6032] AndroidRuntime 	at com.kgurgul.cpuinfo.features.information.hardware.HardwareInfoViewModel.r(SourceFile:10)
     E  [ 6032] AndroidRuntime 	at com.kgurgul.cpuinfo.features.information.hardware.HardwareInfoViewModel.<init>(SourceFile:4)
     E  [ 6032] AndroidRuntime 	at com.kgurgul.cpuinfo.features.information.hardware.d.b(SourceFile:4)
     E  [ 6032] AndroidRuntime 	at com.kgurgul.cpuinfo.features.information.hardware.d.a(SourceFile:1)
     E  [ 6032] AndroidRuntime 	at f.l.a.a.d(SourceFile:4)
     E  [ 6032] AndroidRuntime 	at androidx.lifecycle.a.c(SourceFile:2)
     E  [ 6032] AndroidRuntime 	at androidx.lifecycle.o0.b(SourceFile:6)
     E  [ 6032] AndroidRuntime 	at androidx.lifecycle.o0.a(SourceFile:2)
     E  [ 6032] AndroidRuntime 	at androidx.lifecycle.n0.a(SourceFile:4)
     E  [ 6032] AndroidRuntime 	at androidx.lifecycle.n0.getValue(SourceFile:1)
     E  [ 6032] AndroidRuntime 	at com.kgurgul.cpuinfo.features.information.hardware.b.X1(SourceFile)
     E  [ 6032] AndroidRuntime 	at com.kgurgul.cpuinfo.features.information.hardware.b.R1(SourceFile:1)
     E  [ 6032] AndroidRuntime 	at com.kgurgul.cpuinfo.features.information.base.b.w0(SourceFile:5)
     E  [ 6032] AndroidRuntime 	at androidx.fragment.app.Fragment.Z0(SourceFile:4)
     E  [ 6032] AndroidRuntime 	at androidx.fragment.app.r.e(SourceFile:13)
     E  [ 6032] AndroidRuntime 	at androidx.fragment.app.m.C0(SourceFile:25)
     E  [ 6032] AndroidRuntime 	at androidx.fragment.app.m.B0(SourceFile:1)
     E  [ 6032] AndroidRuntime 	at androidx.fragment.app.m.z0(SourceFile:4)
     E  [ 6032] AndroidRuntime 	at androidx.fragment.app.a.z(SourceFile:26)
     E  [ 6032] AndroidRuntime 	at androidx.fragment.app.m.S(SourceFile:6)
     E  [ 6032] AndroidRuntime 	at androidx.fragment.app.m.T(SourceFile:14)
     E  [ 6032] AndroidRuntime 	at androidx.fragment.app.m.O0(SourceFile:10)
     E  [ 6032] AndroidRuntime 	at androidx.fragment.app.m.R(SourceFile:5)
     E  [ 6032] AndroidRuntime 	at androidx.fragment.app.a.l(SourceFile:2)
     E  [ 6032] AndroidRuntime 	at androidx.fragment.app.s.b(SourceFile:4)
     E  [ 6032] AndroidRuntime 	at androidx.viewpager.widget.ViewPager.F(SourceFile:50)
     E  [ 6032] AndroidRuntime 	at androidx.viewpager.widget.ViewPager.P(SourceFile:15)
     E  [ 6032] AndroidRuntime 	at androidx.viewpager.widget.ViewPager.O(SourceFile:1)
     E  [ 6032] AndroidRuntime 	at androidx.viewpager.widget.ViewPager.setCurrentItem(SourceFile:2)
     E  [ 6032] AndroidRuntime 	at com.google.android.material.tabs.TabLayout$i.b(SourceFile:1)
     E  [ 6032] AndroidRuntime 	at com.google.android.material.tabs.TabLayout.s(SourceFile:2)
     E  [ 6032] AndroidRuntime 	at com.google.android.material.tabs.TabLayout.D(SourceFile:11)
     E  [ 6032] AndroidRuntime 	at com.google.android.material.tabs.TabLayout.C(SourceFile:1)
     E  [ 6032] AndroidRuntime 	at com.google.android.material.tabs.TabLayout$Tab.select(SourceFile:2)
     E  [ 6032] AndroidRuntime 	at com.google.android.material.tabs.TabLayout$h.performClick(SourceFile:4)
     E  [ 6032] AndroidRuntime 	at android.view.View$PerformClick.run(View.java:18770)
     E  [ 6032] AndroidRuntime 	at android.os.Handler.handleCallback(Handler.java:808)
     E  [ 6032] AndroidRuntime 	at android.os.Handler.dispatchMessage(Handler.java:103)
     E  [ 6032] AndroidRuntime 	at android.os.Looper.loop(Looper.java:193)
     E  [ 6032] AndroidRuntime 	at android.app.ActivityThread.main(ActivityThread.java:5292)
     E  [ 6032] AndroidRuntime 	at java.lang.reflect.Method.invokeNative(Native Method)
     E  [ 6032] AndroidRuntime 	at java.lang.reflect.Method.invoke(Method.java:515)
     E  [ 6032] AndroidRuntime 	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:824)
     E  [ 6032] AndroidRuntime 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:640)
     E  [ 6032] AndroidRuntime 	at dalvik.system.NativeStart.main(Native Method)
    

    I checked your app manifest it says minSDK is 16 You have defined this in line 6 of build.gradle

    So for supporting this versions (api 16 to 20) you need to add some checks of version for every method, which maybe not supported or not available and just skip those tests if not possible to messure!

    bug 
    opened by amir1376irani 1
  • Widget gone under Android 9 (LineageOS)?

    Widget gone under Android 9 (LineageOS)?

    I have CPU Info installed on several mobile devices, older phones and tablets. On all the devices the widget showing RAM status works fine (and, btw, is very useful), not however on my Samsung Galaxy GT-N8000 since recently running Android 9, the LineageOS version.

    Before that, I was running Resurrection Remix OS (Android 8, I believe) and the widget worked on the same tablet.

    It also works on the original Samsung Android 5 for an older tablet and Android 7 LineageOS for an older phone.

    Come to think of it, Android 9 might be the highest version that I have tried it on so far. Might that be a reason?

    Although the program runs fine, I cannot find a widget. And under "Settings", the "RAM Widget refresh rate" does not exist.

    The Version is 4.5.0 on all devices.

    opened by nowakommunikation 0
  • [Feature Request] .CSV Output

    [Feature Request] .CSV Output

    Use utility (OpenCSV, Apache Commons CSV) to output capture of data stream since time of app load to .CSV file for report generation and analysis over time.

    opened by e-pmc 0
  • Add cellular information

    Add cellular information

    Hi, I think it could be worth to add cellular information to the app. It's implemented in SatStat application and here are the links to the implementation. 1, 2, 3

    opened by pm4rcin 0
Releases(4.5.0)
Owner
Kamil Gurgul
Kamil Gurgul
Detailed listing of multimedia codecs on your Android device - with no ads!

Codec Info Detailed listing of multimedia codecs on your Android device - with no ads! Codec Info is a simple tool that provides detailed listing of m

Krzysztof Nawrot 46 Dec 18, 2022
On-device wake word detection powered by deep learning.

Porcupine Made in Vancouver, Canada by Picovoice Porcupine is a highly-accurate and lightweight wake word engine. It enables building always-listening

Picovoice 2.8k Jan 5, 2023
On device extracting images from videos - creating video from images.

AndroidVideoTranscoder Surprisingly fast on device video transcoding. Features extracting images from video either ffmpeg or mediacodec creating video

null 29 Dec 20, 2022
Echo is a lightweight and minimal music player for Android, built with Android Studio and written in Kotlin

Echo - Echo, A light-weight, minimal music player for Android, with shuffle, favorites and audio visualization

Divins Mathew 0 Feb 7, 2022
Free p2p cdn android github sdk to reduce video streaming costs of live and on demand video using webrtc by upto 90% and improve scalability by 6x - 🚀 Vadootv 🚀

Android p2p cdn sdk to distribute load and reduce costs(https://peervadoo.com) Vadootv is a p2p sdk integration to reduce your video streaming costs b

Vadootv 40 Oct 5, 2022
Simple and lightweight, yet polished and powerful Android video player based on ExoPlayer

Just (Video) Player Android video player based on ExoPlayer It uses ExoPlayer's extension-ffmpeg with all its audio formats enabled (it can handle eve

Marcel Dopita 677 Dec 28, 2022
Android app for streaming and downloading Movies, TV-Series and Anime.

CloudStream ⚠️ Warning: By default this app doesn't provide any video sources, you have to install extensions in order to add functionality to the app

null 309 Aug 21, 2022
Android app for streaming and downloading Movies, TV-Series and Anime.

CloudStream-3 DOWNLOAD: https://github.com/KillerDogeEmpire/Cloudstream/releases Features: AdFree, No ads whatsoever No tracking/analytics Bookmarks D

Sushil Great 3 Aug 15, 2022
Android app for streaming and downloading Movies, TV-Series and Anime.

CloudStream ⚠️ Warning: By default this app doesn't provide any video sources, you have to install extensions in order to add functionality to the app

Obaida AlBitar 2 Sep 22, 2022
A simple library for parsing and playing links from YouTube, YouTube Music, Vimeo and Rutube is WebView without the need to connect api data services. Request caching is available now

Android Oembed Video A simple library for parsing and playing links from YouTube, YouTube Music, Vimeo and Rutube and others in the WebView without th

Alexey Mostovoy 32 Oct 8, 2022
Fermata Media Player is a free, open source audio and video player with a simple and intuitive interface.

Fermata Media Player About Fermata Media Player is a free, open source audio and video player with a simple and intuitive interface. It is focused on

Andrey 227 Jan 6, 2023
Is an All in One app for Muslims with lots of features such as Prayer Times & Adhan, Collections of Dhikr and Prayer sourced from Authentic Hadith, The Holy Qur'an, Qibla, Notes and many more!

Is an All in One app for Muslims with lots of features such as Prayer Times & Adhan, Collections of Dhikr and Prayer sourced from Authentic Hadith, The Holy Qur'an, Qibla, Notes and many more!

DzikirQu 112 Dec 26, 2022
A Spotify Clone that plays music and has similar UI to actual Spotify Mobile App. Made with Exoplayer and love ❤️

Spotify Clone A Spotify Clone App that can play music, and has a good looking UI that is very similar to actual Spotify Mobile App on Play Store I use

Utku Oruç 4 Oct 12, 2022
Youtube Android Clone 🚀an Android Youtube Clone made out of XML and Kotlin

Youtube Android Clone ?? This app consumes The Youtube Api to fetch and display a list of popular videos, The app uses MVVM design pattern to allow se

Breens Robert 38 Dec 13, 2022
Custom Android view with video player, loader and placeholder image

VideoPlayerView Custom Android view with video player, loader and placeholder image. To stay up-to-date with news about the library Usage Here is an e

Marcin Moskała 89 Nov 18, 2022
Android Texture VideoView having a variety of scale types like the scale types of ImageView such as fitCenter, centerCrop, centerTopCrop and more

Android-ScalableVideoView Looking for the extra scale types of ImageView? Check out ScalableImageView. Android Texture VideoView having a variety of s

Yoshihito Ikeda 1.1k Jan 7, 2023
A elegant and light weight music player for android

A elegant and light weight music player for android

Atul Patare 45 Dec 21, 2022
Android podcast app made with Jetpack Compose and ExoPlayer.

Podcast App Android podcast app made with Jetpack Compose and ExoPlayer. Podcast information provided by Listen Notes API. Features Jetpack Compose UI

Fabian 302 Jan 2, 2023