- Mailspring - Productivity focused & cross-platform email client
- bitwarden - Open-source cross-platform password manager
- eqMac2 - system-wide audio equalizer
Let's say you want to access the application shared preferences in /data/data/com.mypackage.
You could try to run adb shell and then run-as com.mypackage
( or adb shell run-as com.mypackge ls /data/data/com.mypackage/shared_prefs),
but on a production release app downloaded from an app store you're most likely to see:
run-as: Package 'com.mypackage' is not debuggable
| import android.content.res.ColorStateList | |
| import android.graphics.PorterDuff | |
| import android.graphics.drawable.Drawable | |
| import android.support.annotation.ColorInt | |
| import android.support.v4.graphics.drawable.DrawableCompat | |
| /** | |
| * Created by David Whitman | |
| */ | |
| object TintUtils { |
| import android.accounts.Account; | |
| import android.accounts.AccountManager; | |
| import android.content.Context; | |
| import android.text.Editable; | |
| import android.text.InputType; | |
| import android.text.TextWatcher; | |
| import android.util.AttributeSet; | |
| import android.util.Patterns; | |
| import android.widget.ArrayAdapter; |
| Unless specified otherwise, all of the below tinting applies to both Lollipop and pre-Lollipop using AppCompat v21. To use the support version of these attributes, remove the android namespace. For instance, "android:colorControlNormal" becomes "colorControlNormal". These attributes will be propagated to their corresponding attributes within the android namespace for devices running Lollipop. Any exceptions to this will be noted by including the "android:" prefix. | |
| All Clickable Views: | |
| ----------- | |
| * ripple effect (Lollipop only) -- "colorControlHighlight" | |
| Status Bar: | |
| ------------ | |
| * background (Lollipop only) - "colorPrimaryDark" |
| public abstract class CachedRefreshable<P, T> extends Refreshable<P, T> { | |
| protected abstract Observable<T> getSourceObservable(P parameters); | |
| /** | |
| * Return the Observable that gets data from a cached source. | |
| * | |
| * @return Observable from cache item, or null if the cache misses. | |
| */ | |
| protected abstract Observable<T> getCachedObservable(P parameters); |
| import com.google.auto.value.AutoValue; | |
| import java.lang.annotation.Retention; | |
| import java.lang.annotation.Target; | |
| import static java.lang.annotation.ElementType.TYPE; | |
| import static java.lang.annotation.RetentionPolicy.RUNTIME; | |
| /** | |
| * Marks an {@link AutoValue @AutoValue}-annotated type for proper Gson serialization. | |
| * <p> |
| dial *#*#2846579#*#* | |
| select 'ProjectMenu' | |
| select 'Background Setting' | |
| select 'Log Setting' | |
| select 'Log Switch' | |
| enable 'LOG on' | |
| Select 'Log level setting' | |
| enable 'DEBUG' | |
| Press the 'Back' key | |
| select 'Dump and Log' |