Skip to content

Instantly share code, notes, and snippets.

View d4rken's full-sized avatar
🤗
!

Matthias Urhahn d4rken

🤗
!
View GitHub Profile
buildvm@buildvm-VirtualBox:~/toybox_darken$ source build_for_sdm_musl.sh
####### Building toybox for x86... #######
rm -f kconfig/conf kconfig/mconf
rm -f getenforce getprop load_policy log restorecon runcon sendevent setenforce setprop start stop hello skeleton skeleton_alias test_human_readable test_many_options test_scankey dmesg hostname killall md5sum sha1sum sha224sum sha256sum sha384sum sha512sum mknod mktemp mount nfsmount passwd pidof seq su sync umount ifconfig nc netcat netstat rfkill tunctl acpi base64 blkid fstype blockdev bzcat bunzip2 chcon chroot chvt clear count dos2unix unix2dos eject factor fallocate flock free freeramdisk fsfreeze fsync hexedit hostid hwclock inotifyd insmod ionice iorenice login losetup lsattr chattr lsmod lspci lsusb makedevs mix mkpasswd mkswap modinfo mountpoint nbd-client nsenter unshare oneit partprobe pivot_root pmap printenv pwdx readahead readlink realpath reboot halt poweroff reset rev rmmod setfattr setsid shred stat swapoff swapon switch_root sysctl tac task
@d4rken
d4rken / UnpackAssets.java
Created May 2, 2016 09:42
Unpack a file from assets.
Timber.tag(TAG).i("Copying new binary...");
AssetManager assets = getContext().getAssets();
InputStream in = assets.open(assetName);
FileOutputStream f;
f = getContext().openFileOutput(mBinaryConfig.getBaseBinaryName(), Context.MODE_PRIVATE);
byte[] buffer = new byte[1024];
int len1;
while ((len1 = in.read(buffer)) > 0) {
f.write(buffer, 0, len1);
@d4rken
d4rken / gist:c4332ee156c23e76229feacfebafef8f
Created April 2, 2016 17:32
User-made SD Maid poem (german)
SD-Maid steht starr vor Schreck - wieso ist mein Kaffee weg?
Die Androidgewerkschaft schimpft - den Kaffee haben wir erkimpft!
Vernunft soll sein der Maid zum Lohne - nun lutscht sie auf 'ner Kaffeebohne.
Und ganz im Background, nach dem Job, genießt sie ihren Kaffe-Pot.
Ich seh' sie lächeln, seh' sie winken und manchmal lässig Kaffee trinken.
@d4rken
d4rken / gist:67f6153316afdd5a3c45
Created March 17, 2016 14:47
Tibu Crash - Gplay Update?
03-16 20:37:42.221 D/o.N ( 9227): Connecting to MediaScanner
03-16 20:37:42.243 I/o.M ( 9227): Found Market database (version 26) at: /data/data/com.android.vending/databases/localappstate.db
03-16 20:37:42.267 D/o.M ( 9227): Detected columns:
03-16 20:37:42.267 D/o.M ( 9227): - package_name
03-16 20:37:42.267 D/o.M ( 9227): - auto_update
03-16 20:37:42.267 D/o.M ( 9227): - desired_version
03-16 20:37:42.268 D/o.M ( 9227): - download_uri
03-16 20:37:42.268 D/o.M ( 9227): - delivery_data_timestamp_ms
03-16 20:37:42.268 D/o.M ( 9227): - installer_state
03-16 20:37:42.268 D/o.M ( 9227): - first_download_ms
@d4rken
d4rken / pkggen.js
Created December 21, 2015 18:25
Packagenames of all apps published by a specific developer.
var request = require('request');
var cheerio = require('cheerio');
var rl = require("readline");
var prompts = rl.createInterface(process.stdin, process.stdout);
// set some defaults
req = request.defaults({
jar: true, // save cookies to jar
rejectUnauthorized: false,
followAllRedirects: true, // allow redirections
@d4rken
d4rken / ApkPreviewLoader.java
Created October 24, 2015 20:02
A set of classes that was used to load previews in SD Maid during development. Inspired by Picasso, removed in favor of Glide.
package eu.thedarken.sdm.preview.loader;
import android.annotation.TargetApi;
import android.content.Context;
import android.content.pm.ApplicationInfo;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.graphics.Bitmap;
import android.graphics.drawable.Drawable;
import android.os.Build;
@d4rken
d4rken / gist:d5922da27ec69c38b39a
Created September 1, 2015 04:33
API 23 Manifest BroadcastReceivers
android.app.action.ACTION_PASSWORD_CHANGED
android.app.action.ACTION_PASSWORD_EXPIRING
android.app.action.ACTION_PASSWORD_FAILED
android.app.action.ACTION_PASSWORD_SUCCEEDED
android.app.action.DEVICE_ADMIN_DISABLED
android.app.action.DEVICE_ADMIN_DISABLE_REQUESTED
android.app.action.DEVICE_ADMIN_ENABLED
android.app.action.DEVICE_OWNER_CHANGED
android.app.action.INTERRUPTION_FILTER_CHANGED
android.app.action.LOCK_TASK_ENTERING
@d4rken
d4rken / Readme.md
Last active August 29, 2015 14:25 — forked from gabrielemariotti/Readme.md
A SimpleSectionedRecyclerViewAdapter: use this class to realize a simple sectioned `RecyclerView.Adapter`.

You can use this class to realize a simple sectioned RecyclerView.Adapter without changing your code.

The RecyclerView should use a LinearLayoutManager. You can use this code also with the TwoWayView with the ListLayoutManager (https://github.com/lucasr/twoway-view)

This is a porting of the class SimpleSectionedListAdapter provided by Google

Screen

Example:

@d4rken
d4rken / gist:d4bf8c3bdbd3341cda84
Created December 31, 2014 17:20
Hiding an app shortcut by disabling it's Activity.
private void hideIcon() {
PackageManager p = getPackageManager();
p.setComponentEnabledSetting(getComponentName(), PackageManager.COMPONENT_ENABLED_STATE_DISABLED, PackageManager.DONT_KILL_APP);
Toast.makeText(getApplicationContext(), "Icon hidden (may need reboot)", Toast.LENGTH_SHORT).show();
}
@d4rken
d4rken / unknown_crash
Created October 24, 2014 10:29
No idea what's causing it. Seen on 2.3.6.
java.lang.IllegalStateException: ActionBarView can only be used with android:layout_width="MATCH_PARENT" (or fill_parent)
at android.support.v7.internal.widget.ActionBarView.onMeasure(ActionBarView.java:840)
at android.view.View.measure(View.java:8313)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:3138)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:250)
at android.support.v7.internal.widget.ActionBarContainer.onMeasure(ActionBarContainer.java:248)
at android.view.View.measure(View.java:8313)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:3138)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1017)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:386)