Skip to content
This repository was archived by the owner on May 3, 2021. It is now read-only.

Commit b9e95fe

Browse files
committed
updated readme
1 parent 2314698 commit b9e95fe

File tree

2 files changed

+19
-8
lines changed

2 files changed

+19
-8
lines changed

.idea/misc.xml

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

README.md

Lines changed: 18 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -50,9 +50,10 @@ dependencies {
5050
2. [Listeners](https://github.com/LayoutXML/AppListManager#listeners)
5151
4. [Other Information](https://github.com/LayoutXML/AppListManager#other-information)
5252
1. [Sample app](https://github.com/LayoutXML/AppListManager#sample-app)
53-
2. [Donate](https://github.com/LayoutXML/AppListManager#donate)
54-
3. [Author](https://github.com/LayoutXML/AppListManager#author)
55-
4. [License](https://github.com/LayoutXML/AppListManager#license)
53+
2. [Versioning]()
54+
3. [Donate](https://github.com/LayoutXML/AppListManager#donate)
55+
4. [Author](https://github.com/LayoutXML/AppListManager#author)
56+
5. [License](https://github.com/LayoutXML/AppListManager#license)
5657
5. [Changelog](https://github.com/LayoutXML/AppListManager/blob/master/CHANGELOG.md) (in an external file)
5758

5859
## How to use - basic features
@@ -128,6 +129,7 @@ AppData object contains these properties of applications and activities:
128129
3. Flags (*Integer*) - application flags. For activities it's still application flags.
129130
4. ActivityName (*String*) - activity name you would want to use for identifying or launching activities. For applications this variable is set to null.
130131
5. PackageName (*String*) - application package name. For activities it's still application package name.
132+
6. Permissions (*String[]*) - application permissions. For activities it's still application permissions.
131133

132134
All these variables have getters and setters that can be used with `.set<Name>` and `.get<Name>`. For example, package name can be accesses with `.getPackageName()` and `.setPackageName(String)`.
133135

@@ -147,13 +149,19 @@ Method `AppList.sort` takes 4 arguments - app list (what to sort), two integer a
147149

148150
Because we can not get app names, icons and other data of already uninstalled apps, method `.equals()` is overridden to compare by package names. This includes `.contains()`, `.remove()`, `.removeAll()` and others.
149151

150-
### Checking and filtering applications with flags
152+
### Checking and filtering applications by their permissions
151153

152-
It is possible to filter applications lists received by `appListener`, `newAppListener`, `activityListener`, `newActivityListener` with any combination of [these flags](https://developer.android.com/reference/android/content/pm/ApplicationInfo#flags) and their opposites (if `FLAG_SYSTEM` filter returns a list of not updated systems apps, the opposite would be all user apps and updated system apps). You can also check individual application's flags and check if it contains any combination of them.
154+
It is possible to filter application lists received by `appListener`, `newAppListener`, `activityListener`, `newActivityListener` by permissions lists. If application contains at least one given permission, it is returned to these listeners. You can also access individual application's permissions list using `getPermissions` method.
153155

154-
Additionally, you can check whether an individual application has flags by using `AppList.checkFlags(...)` with 3 arguments - application (or activity) list, flags ([these](https://developer.android.com/reference/android/content/pm/ApplicationInfo#flags)) and whether to match them or not. Alternatively, you can check flags yourself by accessing app's flags using `.getFlags`. When checking an activity, method checks its application flags and not activity flags.
156+
Additionally, you can check whether an individual application uses (i.e. has it in its manifest file) at least one of the given permissions by using `AppList.checkApplicationPermissions(...)` with 2 arguments - application (or activity) and permissions. When checking an activity, method checks its application permissions.
155157

156-
### Filtering activities with flags
158+
### Checking and filtering applications by their flags
159+
160+
It is possible to filter application lists received by `appListener`, `newAppListener`, `activityListener`, `newActivityListener` by any combination of [these flags](https://developer.android.com/reference/android/content/pm/ApplicationInfo#flags) and their opposites (if `FLAG_SYSTEM` filter returns a list of not updated systems apps, the opposite would be all user apps and updated system apps). You can also access individual application's flags using `.getFlags` method.
161+
162+
Additionally, you can check whether an individual application contains any combination of flags by using `AppList.checkFlags(...)` with 3 arguments - application (or activity), flags ([these](https://developer.android.com/reference/android/content/pm/ApplicationInfo#flags)) and whether to match them or not. When checking an activity, method checks its application flags and not activity flags.
163+
164+
### Filtering activities by their flags
157165

158166
It is also possible to filter activity lists received by `activityListener`, `newActivityListener` with any combination of [these flags](https://developer.android.com/reference/android/content/pm/PackageManager#queryIntentActivities(android.content.Intent,%20int)).
159167

@@ -236,6 +244,9 @@ Sample app that showcases most of the features can be found in ["app" folder in
236244
11. Sorting (sort).
237245
12. Launching applications and activities.
238246

247+
### Versioning
248+
249+
AppListManager library uses [Semantic Versioning 2.0.0](https://semver.org/). Sample application however, does not.
239250

240251
### Donate
241252
You can now donate to me (LayouXML) on **[Google Play](https://play.google.com/store/apps/details?id=com.layoutxml.support)** or **[PayPal](https://www.paypal.me/RJankunas)**.

0 commit comments

Comments
 (0)