Giter VIP home page Giter VIP logo

rootless-logcat's People

Contributors

bubu avatar naofum avatar scrumplex avatar tananaev 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

rootless-logcat's Issues

memory leak about AsyncTask

According to our research, there are misuses about the following AsyncTask class:
( in com.tananaev.logcat. MainActivity)

private ReaderTask readerTask;
//……
private class ReaderTask extends AsyncTask<Void, StatusUpdate, Void> 

The problems is:

  1. It is inner class. It holds strong reference to the GUI element of Activity( MainActivity ), which can lead to memory leak when the Activity is destroyed and the AsyncTask did not finish.

I think we can make following changes to fix the misuse problems:

  1. I think the GUI-related fields should be wrapped into WeakReference. Take
    private final MainActivity _context as example, it can be changed to private final WeakReference<MainActivity> _context.

Request: Allow for multiple keyword/tag matching, and PID Lookup

Use case: to filter the log for a number of different elements and share a single filtered log with all events in order.

Instead of using regionMatches to detect for a keyword or tag match, could a list of strings, or potentially a regular expression be used instead?

Potentially could also filter the log at the shell:logcat level to reduce the memory requirements:
-e , --regex= Only print lines where the log message matches where is a regular expression.


Use case: to filter the log by application - instead of using a PID Number (Process ID)

Could a PID lookup to Application Identifier (com.google.xxxx) be implemented?

re: playstore comments

To expand on the play store comments:

  • the way I use this is to look at logs where it's not easy to attach a proper logcat viewer. For example something gps-related, or wifi/cell network crossing. It is much easier to match what happens in the physical world (e.g. I've stepped outside the wifi range) with what happens in the app if I could look at the logs for the app right when I'm moving around. Certainly I can copy the log and email it to myself, but then I'd have to remember the exact time when something happened to match it with the log later. So filtering by bundle id would be immensely helpful.
  • timestamps aren't even shown on the play store screenshots, so I'm sure it's easy to reproduce ;)

[FR] add a changelog

It would be really appreciated if a changelog is available to see what changes are new to a version. If someone usages the application via F-Daroid then all they see is an update not what is updated. Maybe use something like keep a changelog.

Publish APK at Github?

Would you consider publishing the .apk here at Github, for folks without Playstore? Preferably in the releases/ section (see: Creating Releases in the GitHub Help), which is really easy. If you'd do so, I could automatically pick it up (within 24h or your attaching it there) and offer it via my F-Droid compatible repo, and those folks would get automated updates even.

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.