Giter Club home page Giter Club logo

android-applications-info's Introduction

ApplicationsInfo

(Pull request are welcomed, don't hesitate to improve the app !)

Simple android application that shows all information available about all installed apps. It can be a good source of inspiration for all beginners. It deals with activities, multi pane, fragments, async tasks ...

Get it on F-Droid

Get it on Google Play

Screenshot

Changelog

  • 1.4:
    • Added size and sort by size in main list
    • Changed installation and last update dates format
    • Fixed label in detail for tablets
    • Fixed minute value that appears instead of month
  • 1.3:
    • Better display of manifest code
    • Design and bug fixies
  • 1.2:
    • View manifest file
  • 1.1:
    • Multi pane
    • Detailed size
  • 1.0:
    • Initial release

This app is using parts of XmlApkParser library, which is under Apache License 2.0

android-applications-info's People

Contributors

djcrashdummy avatar henridellal avatar majeurandroid avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

android-applications-info's Issues

Create APK from installed apps

Add an ability to create an APK (name/version number/package informations) from installed apps (and the automatic backup when them is installed for the first time)

Sharing

How can I share the infos the apps gathers?

Addons detector

Add the ability to detect the addons used by the installed apps

copy fails for very large manifests

This is a Nokia 1 running Android 9.

  • Open the entry for the system "Settings" app -- which is very large, of course.
  • "View manifest file" -- takes a few seconds to render.
  • Long-click in the text.
  • Select all
  • Copy

"Failed to copy to the clipboard"

I presume this has to do with the very large size of that manifest.
Other, smaller manifest files are copied just fine.

Look... the manifest viewer is pretty limited. It has no search capabilities, etc. And it has this copy problem.
SUGGESTION: Chunk this manifest viewer functionality, and replace it with a manifest "share" functionality so the user can send the manifest to any other app that can handle XML or text. That would be the Androidesque solution.

Build issues

Could you provide some details for building this app from source? It looks like it's not a standard ant+sdk build? Also note:.

  • You should not use jar files as depdencies, especially if the source code is hosted on googlecode which will vanish some day. I'd recommend import the XmlApkParser files directly into the project.
  • The AndroidManifest.xml should have android:versioncode and android:versionname set.

External data when no External card

Fantastic App. Thank you!

It lists "External" data (and states that apps are using "External" data) even when phone has no External storage Card.

Is "External" the best term for the UI? What does "External" mean?

apps_Packages Info

Why is ComponentFactory automatically highlighted when viewing the Manifest file in the apps_Packages Info app? It just so happens that user apps I have installed where this occurs will not uninstall. Perhaps the reason for the problem (that they will not uninstall) is related to the ComponentFactory highlighted. Do I have a point? I do not have root privileges. Can you please offer any answer or suggestion you may have? [email protected].

Filtering

Great app!

Due to the sheer number of apps on my phone, the main listing is pretty unwieldy.
For my purposes, I have little interest in seeing system packages at all.

It would be nice if system packages could be completely filtered out.

Other filters also come to mind: for instance filtering by
permission type (dangerous, signature, ... development, etc)
minSdkVersion

Now that I think about it, everything you sort by is also a candidate for filtering.

remember sorting

Please add function that the app is remember the sorting after closing an new starting

Security analysis

Could you add security analysis feature?
I mean
1 group the apps with the same public key (for example, the f-droid one) and show warnings if large amount of apps have the same pk
2 show warnings about the apps whoose signature is weak due either weak hash function (for example, md5 or sha1) or weak trapdoor function (for example rsa-1024)
3 heuristically detect overpermissioned apps
4 check packages on virustotal

Fix translations

Building breaks because of missing and/or extra translations:

:app:lintVitalRelease/home/krt/src/fdroiddata/build/com.majeur.applicationsinfo/app/src/main/res/values/strings.xml:33: Error: "declared_premission" is not translated in "pt-BR" (Portuguese: Brazil) [MissingTranslation]
    <string name="declared_premission">Permissions</string>
            ~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/krt/src/fdroiddata/build/com.majeur.applicationsinfo/app/src/main/res/values/strings.xml:73: Error: "sort" is not translated in "pt-BR" (Portuguese: Brazil) [MissingTranslation]
    <string name="sort">Sort</string>
            ~~~~~~~~~~~

   Explanation for issues of type "MissingTranslation":
   If an application has more than one locale, then all the strings declared
   in one language should also be translated in all other languages.

   If the string should not be translated, you can add the attribute
   translatable="false" on the <string> element, or you can define all your
   non-translatable strings in a resource file called donottranslate.xml. Or,
   you can ignore the issue with a tools:ignore="MissingTranslation"
   attribute.

   By default this detector allows regions of a language to just provide a
   subset of the strings and fall back to the standard language strings. You
   can require all regions to provide a full translation by setting the
   environment variable ANDROID_LINT_COMPLETE_REGIONS.

   You can tell lint (and other tools) which language is the default language
   in your res/values/ folder by specifying tools:locale="languageCode" for
   the root <resources> element in your resource file. (The tools prefix
   refers to the namespace declaration http://schemas.android.com/tools.)

/home/krt/src/fdroiddata/build/com.majeur.applicationsinfo/app/src/main/res/values-pt-rBR/strings.xml:33: Error: "declared_permission" is translated here but not found in default locale [ExtraTranslation]
    <string name="declared_permission">Permissões</string>
            ~~~~~~~~~~~~~~~~~~~~~~~~~~

   Explanation for issues of type "ExtraTranslation":
   If a string appears in a specific language translation file, but there is
   no corresponding string in the default locale, then this string is probably
   unused. (It's technically possible that your application is only intended
   to run in a specific locale, but it's still a good idea to provide a
   fallback.).

   Note that these strings can lead to crashes if the string is looked up on
   any locale not providing a translation, so it's important to clean them
   up.

3 errors, 0 warnings
 FAILED

Spinner is blank

On an Android 6 custom ROM when I try to select a different sort method the text is invisible, though I can stil select by guessing. It must be white text on white background.

UnsupportedOperationException

//package name: com.majeur.applicationsinfo
//version: 1.6
//target sdk version: android-18
java.lang.UnsupportedOperationException: addView(View, LayoutParams) is not supported in AdapterView
at android.widget.AdapterView.addView(AdapterView.java:477)
at android.view.LayoutInflater.inflate(LayoutInflater.java:500)
at android.view.LayoutInflater.inflate(LayoutInflater.java:397)
at android.view.LayoutInflater.inflate(LayoutInflater.java:353)
at com.majeur.applicationsinfo.DetailFragment$Adapter.getConfigurationView(DetailFragment.java:767)
at com.majeur.applicationsinfo.DetailFragment$Adapter.getChildView(DetailFragment.java:420)
at android.widget.ExpandableListConnector.getView(ExpandableListConnector.java:451)
at android.widget.AbsListView.obtainView(AbsListView.java:2161)
at android.widget.ListView.makeAndAddView(ListView.java:1840)
at android.widget.ListView.fillDown(ListView.java:675)
at android.widget.ListView.fillGap(ListView.java:639)
at android.widget.AbsListView.trackMotionScroll(AbsListView.java:4970)
at android.widget.AbsListView$FlingRunnable.run(AbsListView.java:4127)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:749)
at android.view.Choreographer.doCallbacks(Choreographer.java:562)
at android.view.Choreographer.doFrame(Choreographer.java:531)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:735)
at android.os.Handler.handleCallback(Handler.java:730)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5103)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:525)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:737)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
at dalvik.system.NativeStart.main(Native Method)

Uses permissions - Legend - How to read?

Hi Folks,

Thanks! for this app.

How does one read the Legend used for Uses permissions?

Some entries have the text in Black with a Check mark at the end.

Some entries have the text in Grey with an * at the end.

Some entries have the text in Grey with nothing added after it.

Thanks, M.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.