Skip to content

Instantly share code, notes, and snippets.

View menny's full-sized avatar

Menny Even Danan menny

View GitHub Profile
@menny
menny / verify_appstore_in_app.php
Last active February 15, 2024 14:45
How to verify in-app purchases from AppStore and Market in PHP code (server-side)
function verify_app_store_in_app($receipt, $is_sandbox)
{
//$sandbox should be TRUE if you want to test against itunes sandbox servers
if ($is_sandbox)
$verify_host = "ssl://sandbox.itunes.apple.com";
else
$verify_host = "ssl://buy.itunes.apple.com";
$json='{"receipt-data" : "'.$receipt.'" }';
//opening socket to itunes
@menny
menny / ScalingImageView.java
Created July 24, 2012 10:20
Android's ImageView scaling hack
package net.evendanan.android.hacks;
import android.content.Context;
import android.graphics.drawable.Drawable;
import android.util.AttributeSet;
/****
*Note, this ImageView hack will ALWAYS scale the image (up or down) to fit the available
*space, while keeping the image aspect ratio.
*/
@menny
menny / AndroidDumpHprof.java
Last active December 12, 2015 01:08
Android Memory Leaks OR The Different Ways to Leak
File extFolder = Environment.getExternalStorageDirectory();
File target = new File(extFolder, "ask_mem_dump.hprof");
Debug.dumpHprofData(target.getAbsolutePath());
@menny
menny / InnerClassSnippet.java
Last active December 12, 2015 08:59
Android Memory Leaks OR Different Ways to Leak
public class AnySoftKeyboard extends InputMethodService {
private static final class KeyboardUIStateHanlder extends Handler {
//This will NOT be counted as a reference!
private final WeakReference<AnySoftKeyboard> mKeyboard;
public KeyboardUIStateHanlder(AnySoftKeyboard keyboard) {
mKeyboard = new WeakReference<AnySoftKeyboard>(keyboard);
}
private static void unbindDrawable(Drawable d) {
if (d != null)
d.setCallback(null);
}
public EdgeEffect(Context context) {
final Resources res = context.getResources();
mEdge = res.getDrawable(R.drawable.overscroll_edge);
mGlow = res.getDrawable(R.drawable.overscroll_glow);
@menny
menny / AndroidManifest_API3.xml
Created December 10, 2013 16:01
Gists for 2013-12-10-multi_API_level_release post
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.menny.android.anysoftkeyboard"
android:versionCode="112"
android:versionName="20131030">
<uses-sdk
android:minSdkVersion="3"
android:targetSdkVersion="3"
android:maxSdkVersion="3">
</uses-sdk>

Keybase proof

I hereby claim:

  • I am menny on github.
  • I am menny (https://keybase.io/menny) on keybase.
  • I have a public key ASAMK-AR6-FswpVJ2DALxjQcOVy8zcaT3xndSDjXSI5KHgo

To claim this, I am signing this object:

@menny
menny / build.gradle
Last active August 29, 2015 14:00
Shippable for _Android_ Projects
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.9.+'
classpath 'com.jakewharton.sdkmanager:gradle-plugin:0.9.+'
}
}
public class CustomGradleTestRunner extends RobolectricGradleTestRunner {
private static final int MAX_SDK_LEVEL = 21;
public CustomGradleTestRunner(Class<?> klass) throws InitializationError {
super(klass);
}
@Override
public Config getConfig(Method method) {
Config config = super.getConfig(method);