From 428a9c539655c17169df2f21ade077d87ce94869 Mon Sep 17 00:00:00 2001 From: Dominik Date: Thu, 22 Mar 2012 20:38:50 +0100 Subject: [PATCH] Started working on API demo app --- org_apg/AndroidManifest.xml | 4 +- org_apg_api_demo/.gitignore | 23 ++ org_apg_api_demo/AndroidManifest.xml | 28 +++ org_apg_api_demo/proguard.cfg | 40 ++++ org_apg_api_demo/project.properties | 11 + org_apg_api_demo/res/drawable-hdpi/icon.png | Bin 0 -> 3869 bytes org_apg_api_demo/res/drawable-ldpi/icon.png | Bin 0 -> 1765 bytes org_apg_api_demo/res/drawable-mdpi/icon.png | Bin 0 -> 2488 bytes org_apg_api_demo/res/drawable-xhdpi/icon.png | Bin 0 -> 5832 bytes org_apg_api_demo/res/layout/intent_demo_1.xml | 13 ++ org_apg_api_demo/res/xml/base_preference.xml | 20 ++ .../src/org/apg/api_demo/BaseActivity.java | 58 +++++ .../org/apg/api_demo/IntentDemo1Activity.java | 44 ++++ .../src/org/apg/api_demo/util/Constants.java | 70 ++++++ .../org/apg/api_demo/util/IntentHelper.java | 216 ++++++++++++++++++ .../org/apg/api_demo/util/ProviderHelper.java | 164 +++++++++++++ .../src/org/apg/api_demo/util/Util.java | 51 +++++ 17 files changed, 741 insertions(+), 1 deletion(-) create mode 100644 org_apg_api_demo/.gitignore create mode 100644 org_apg_api_demo/AndroidManifest.xml create mode 100644 org_apg_api_demo/proguard.cfg create mode 100644 org_apg_api_demo/project.properties create mode 100644 org_apg_api_demo/res/drawable-hdpi/icon.png create mode 100644 org_apg_api_demo/res/drawable-ldpi/icon.png create mode 100644 org_apg_api_demo/res/drawable-mdpi/icon.png create mode 100644 org_apg_api_demo/res/drawable-xhdpi/icon.png create mode 100644 org_apg_api_demo/res/layout/intent_demo_1.xml create mode 100644 org_apg_api_demo/res/xml/base_preference.xml create mode 100644 org_apg_api_demo/src/org/apg/api_demo/BaseActivity.java create mode 100644 org_apg_api_demo/src/org/apg/api_demo/IntentDemo1Activity.java create mode 100644 org_apg_api_demo/src/org/apg/api_demo/util/Constants.java create mode 100644 org_apg_api_demo/src/org/apg/api_demo/util/IntentHelper.java create mode 100644 org_apg_api_demo/src/org/apg/api_demo/util/ProviderHelper.java create mode 100644 org_apg_api_demo/src/org/apg/api_demo/util/Util.java diff --git a/org_apg/AndroidManifest.xml b/org_apg/AndroidManifest.xml index b96c442fe..1e91eb928 100644 --- a/org_apg/AndroidManifest.xml +++ b/org_apg/AndroidManifest.xml @@ -4,9 +4,11 @@ + + diff --git a/org_apg_api_demo/.gitignore b/org_apg_api_demo/.gitignore new file mode 100644 index 000000000..2e423e1a3 --- /dev/null +++ b/org_apg_api_demo/.gitignore @@ -0,0 +1,23 @@ +#Android generated +bin +gen +obj +libs/armeabi +lint.xml +local.properties + +#Eclipse +.project +.classpath +.settings + +#IntelliJ IDEA +.idea +*.iml + +#Maven +target +release.properties + +#Mac +.DS_Store \ No newline at end of file diff --git a/org_apg_api_demo/AndroidManifest.xml b/org_apg_api_demo/AndroidManifest.xml new file mode 100644 index 000000000..8e1bb1e25 --- /dev/null +++ b/org_apg_api_demo/AndroidManifest.xml @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/org_apg_api_demo/proguard.cfg b/org_apg_api_demo/proguard.cfg new file mode 100644 index 000000000..b1cdf17b5 --- /dev/null +++ b/org_apg_api_demo/proguard.cfg @@ -0,0 +1,40 @@ +-optimizationpasses 5 +-dontusemixedcaseclassnames +-dontskipnonpubliclibraryclasses +-dontpreverify +-verbose +-optimizations !code/simplification/arithmetic,!field/*,!class/merging/* + +-keep public class * extends android.app.Activity +-keep public class * extends android.app.Application +-keep public class * extends android.app.Service +-keep public class * extends android.content.BroadcastReceiver +-keep public class * extends android.content.ContentProvider +-keep public class * extends android.app.backup.BackupAgentHelper +-keep public class * extends android.preference.Preference +-keep public class com.android.vending.licensing.ILicensingService + +-keepclasseswithmembernames class * { + native ; +} + +-keepclasseswithmembers class * { + public (android.content.Context, android.util.AttributeSet); +} + +-keepclasseswithmembers class * { + public (android.content.Context, android.util.AttributeSet, int); +} + +-keepclassmembers class * extends android.app.Activity { + public void *(android.view.View); +} + +-keepclassmembers enum * { + public static **[] values(); + public static ** valueOf(java.lang.String); +} + +-keep class * implements android.os.Parcelable { + public static final android.os.Parcelable$Creator *; +} diff --git a/org_apg_api_demo/project.properties b/org_apg_api_demo/project.properties new file mode 100644 index 000000000..8da376af8 --- /dev/null +++ b/org_apg_api_demo/project.properties @@ -0,0 +1,11 @@ +# This file is automatically generated by Android Tools. +# Do not modify this file -- YOUR CHANGES WILL BE ERASED! +# +# This file must be checked in Version Control Systems. +# +# To customize properties used by the Ant build system use, +# "ant.properties", and override values to adapt the script to your +# project structure. + +# Project target. +target=android-15 diff --git a/org_apg_api_demo/res/drawable-hdpi/icon.png b/org_apg_api_demo/res/drawable-hdpi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..d0a519c3e3f25d3e55d0ccdd0d64790a8ce708e7 GIT binary patch literal 3869 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 Hu0mjfw;fZv literal 0 HcmV?d00001 diff --git a/org_apg_api_demo/res/drawable-mdpi/icon.png b/org_apg_api_demo/res/drawable-mdpi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..b23eeb8ab90869b75e6efaa0e14d53c1b7f25c20 GIT binary patch literal 2488 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 S?t-KM0000 + + +