Commit 064eb2054994613924aae1966899abf5c04eda24
1 parent
656f5f9fdd
Exists in
master
分离iap支付方法
Showing 11 changed files with 77 additions and 50 deletions Inline Diff
- GameSDK-release4.1.3.aar
- GameSDK-release4.1.4.aar
- GameSDKDemo/GameSDKDemo.iml
- GameSDKDemo/build.gradle
- GameSDKDemo/libs/GameSDK-release4.1.3.aar
- GameSDKDemo/libs/GameSDK-release4.1.4.aar
- GameSDKDemo/src/main/AndroidManifest.xml
- GameSDKDemo/src/main/java/com/gumptech/sdk/demo/MainActivity.java
- GameSDKDemo/src/main/res/layout/activity_main.xml
- GameSDKDemo/src/main/res/values/colors.xml
- GameSDKDemo/src/main/res/values/styles.xml
GameSDK-release4.1.3.aar
No preview for this file type
GameSDK-release4.1.4.aar
No preview for this file type
GameSDKDemo/GameSDKDemo.iml
1 | <?xml version="1.0" encoding="UTF-8"?> | 1 | <?xml version="1.0" encoding="UTF-8"?> |
2 | <module external.linked.project.id=":GameSDKDemo" external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$/../../../GameSDK_AS" external.system.id="GRADLE" external.system.module.group="GameSDK_AS" external.system.module.version="unspecified" type="JAVA_MODULE" version="4"> | 2 | <module external.linked.project.id=":GameSDKDemo" external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$/../../../GameSDK_AS" external.system.id="GRADLE" external.system.module.group="GameSDK_AS" external.system.module.version="unspecified" type="JAVA_MODULE" version="4"> |
3 | <component name="FacetManager"> | 3 | <component name="FacetManager"> |
4 | <facet type="android-gradle" name="Android-Gradle"> | 4 | <facet type="android-gradle" name="Android-Gradle"> |
5 | <configuration> | 5 | <configuration> |
6 | <option name="GRADLE_PROJECT_PATH" value=":GameSDKDemo" /> | 6 | <option name="GRADLE_PROJECT_PATH" value=":GameSDKDemo" /> |
7 | </configuration> | 7 | </configuration> |
8 | </facet> | 8 | </facet> |
9 | <facet type="android" name="Android"> | 9 | <facet type="android" name="Android"> |
10 | <configuration> | 10 | <configuration> |
11 | <option name="SELECTED_BUILD_VARIANT" value="debug" /> | 11 | <option name="SELECTED_BUILD_VARIANT" value="debug" /> |
12 | <option name="SELECTED_TEST_ARTIFACT" value="_android_test_" /> | 12 | <option name="SELECTED_TEST_ARTIFACT" value="_android_test_" /> |
13 | <option name="ASSEMBLE_TASK_NAME" value="assembleDebug" /> | 13 | <option name="ASSEMBLE_TASK_NAME" value="assembleDebug" /> |
14 | <option name="COMPILE_JAVA_TASK_NAME" value="compileDebugSources" /> | 14 | <option name="COMPILE_JAVA_TASK_NAME" value="compileDebugSources" /> |
15 | <afterSyncTasks> | 15 | <afterSyncTasks> |
16 | <task>generateDebugSources</task> | 16 | <task>generateDebugSources</task> |
17 | </afterSyncTasks> | 17 | </afterSyncTasks> |
18 | <option name="ALLOW_USER_CONFIGURATION" value="false" /> | 18 | <option name="ALLOW_USER_CONFIGURATION" value="false" /> |
19 | <option name="MANIFEST_FILE_RELATIVE_PATH" value="/src/main/AndroidManifest.xml" /> | 19 | <option name="MANIFEST_FILE_RELATIVE_PATH" value="/src/main/AndroidManifest.xml" /> |
20 | <option name="RES_FOLDER_RELATIVE_PATH" value="/src/main/res" /> | 20 | <option name="RES_FOLDER_RELATIVE_PATH" value="/src/main/res" /> |
21 | <option name="RES_FOLDERS_RELATIVE_PATH" value="file://$MODULE_DIR$/src/main/res" /> | 21 | <option name="RES_FOLDERS_RELATIVE_PATH" value="file://$MODULE_DIR$/src/main/res" /> |
22 | <option name="ASSETS_FOLDER_RELATIVE_PATH" value="/src/main/assets" /> | 22 | <option name="ASSETS_FOLDER_RELATIVE_PATH" value="/src/main/assets" /> |
23 | </configuration> | 23 | </configuration> |
24 | </facet> | 24 | </facet> |
25 | </component> | 25 | </component> |
26 | <component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_7" inherit-compiler-output="false"> | 26 | <component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_7" inherit-compiler-output="false"> |
27 | <output url="file://$MODULE_DIR$/build/intermediates/classes/debug" /> | 27 | <output url="file://$MODULE_DIR$/build/intermediates/classes/debug" /> |
28 | <output-test url="file://$MODULE_DIR$/build/intermediates/classes/test/debug" /> | 28 | <output-test url="file://$MODULE_DIR$/build/intermediates/classes/test/debug" /> |
29 | <exclude-output /> | 29 | <exclude-output /> |
30 | <content url="file://$MODULE_DIR$"> | 30 | <content url="file://$MODULE_DIR$"> |
31 | <sourceFolder url="file://$MODULE_DIR$/build/generated/source/r/debug" isTestSource="false" generated="true" /> | 31 | <sourceFolder url="file://$MODULE_DIR$/build/generated/source/r/debug" isTestSource="false" generated="true" /> |
32 | <sourceFolder url="file://$MODULE_DIR$/build/generated/source/aidl/debug" isTestSource="false" generated="true" /> | 32 | <sourceFolder url="file://$MODULE_DIR$/build/generated/source/aidl/debug" isTestSource="false" generated="true" /> |
33 | <sourceFolder url="file://$MODULE_DIR$/build/generated/source/buildConfig/debug" isTestSource="false" generated="true" /> | 33 | <sourceFolder url="file://$MODULE_DIR$/build/generated/source/buildConfig/debug" isTestSource="false" generated="true" /> |
34 | <sourceFolder url="file://$MODULE_DIR$/build/generated/source/rs/debug" isTestSource="false" generated="true" /> | 34 | <sourceFolder url="file://$MODULE_DIR$/build/generated/source/rs/debug" isTestSource="false" generated="true" /> |
35 | <sourceFolder url="file://$MODULE_DIR$/build/generated/source/apt/debug" isTestSource="false" generated="true" /> | 35 | <sourceFolder url="file://$MODULE_DIR$/build/generated/source/apt/debug" isTestSource="false" generated="true" /> |
36 | <sourceFolder url="file://$MODULE_DIR$/build/generated/res/rs/debug" type="java-resource" /> | 36 | <sourceFolder url="file://$MODULE_DIR$/build/generated/res/rs/debug" type="java-resource" /> |
37 | <sourceFolder url="file://$MODULE_DIR$/build/generated/res/resValues/debug" type="java-resource" /> | 37 | <sourceFolder url="file://$MODULE_DIR$/build/generated/res/resValues/debug" type="java-resource" /> |
38 | <sourceFolder url="file://$MODULE_DIR$/build/generated/source/r/androidTest/debug" isTestSource="true" generated="true" /> | 38 | <sourceFolder url="file://$MODULE_DIR$/build/generated/source/r/androidTest/debug" isTestSource="true" generated="true" /> |
39 | <sourceFolder url="file://$MODULE_DIR$/build/generated/source/aidl/androidTest/debug" isTestSource="true" generated="true" /> | 39 | <sourceFolder url="file://$MODULE_DIR$/build/generated/source/aidl/androidTest/debug" isTestSource="true" generated="true" /> |
40 | <sourceFolder url="file://$MODULE_DIR$/build/generated/source/buildConfig/androidTest/debug" isTestSource="true" generated="true" /> | 40 | <sourceFolder url="file://$MODULE_DIR$/build/generated/source/buildConfig/androidTest/debug" isTestSource="true" generated="true" /> |
41 | <sourceFolder url="file://$MODULE_DIR$/build/generated/source/rs/androidTest/debug" isTestSource="true" generated="true" /> | 41 | <sourceFolder url="file://$MODULE_DIR$/build/generated/source/rs/androidTest/debug" isTestSource="true" generated="true" /> |
42 | <sourceFolder url="file://$MODULE_DIR$/build/generated/source/apt/androidTest/debug" isTestSource="true" generated="true" /> | 42 | <sourceFolder url="file://$MODULE_DIR$/build/generated/source/apt/androidTest/debug" isTestSource="true" generated="true" /> |
43 | <sourceFolder url="file://$MODULE_DIR$/build/generated/res/rs/androidTest/debug" type="java-test-resource" /> | 43 | <sourceFolder url="file://$MODULE_DIR$/build/generated/res/rs/androidTest/debug" type="java-test-resource" /> |
44 | <sourceFolder url="file://$MODULE_DIR$/build/generated/res/resValues/androidTest/debug" type="java-test-resource" /> | 44 | <sourceFolder url="file://$MODULE_DIR$/build/generated/res/resValues/androidTest/debug" type="java-test-resource" /> |
45 | <sourceFolder url="file://$MODULE_DIR$/src/debug/res" type="java-resource" /> | 45 | <sourceFolder url="file://$MODULE_DIR$/src/debug/res" type="java-resource" /> |
46 | <sourceFolder url="file://$MODULE_DIR$/src/debug/resources" type="java-resource" /> | 46 | <sourceFolder url="file://$MODULE_DIR$/src/debug/resources" type="java-resource" /> |
47 | <sourceFolder url="file://$MODULE_DIR$/src/debug/assets" type="java-resource" /> | 47 | <sourceFolder url="file://$MODULE_DIR$/src/debug/assets" type="java-resource" /> |
48 | <sourceFolder url="file://$MODULE_DIR$/src/debug/aidl" isTestSource="false" /> | 48 | <sourceFolder url="file://$MODULE_DIR$/src/debug/aidl" isTestSource="false" /> |
49 | <sourceFolder url="file://$MODULE_DIR$/src/debug/java" isTestSource="false" /> | 49 | <sourceFolder url="file://$MODULE_DIR$/src/debug/java" isTestSource="false" /> |
50 | <sourceFolder url="file://$MODULE_DIR$/src/debug/jni" isTestSource="false" /> | 50 | <sourceFolder url="file://$MODULE_DIR$/src/debug/jni" isTestSource="false" /> |
51 | <sourceFolder url="file://$MODULE_DIR$/src/debug/rs" isTestSource="false" /> | 51 | <sourceFolder url="file://$MODULE_DIR$/src/debug/rs" isTestSource="false" /> |
52 | <sourceFolder url="file://$MODULE_DIR$/src/debug/shaders" isTestSource="false" /> | 52 | <sourceFolder url="file://$MODULE_DIR$/src/debug/shaders" isTestSource="false" /> |
53 | <sourceFolder url="file://$MODULE_DIR$/src/testDebug/res" type="java-test-resource" /> | 53 | <sourceFolder url="file://$MODULE_DIR$/src/testDebug/res" type="java-test-resource" /> |
54 | <sourceFolder url="file://$MODULE_DIR$/src/testDebug/resources" type="java-test-resource" /> | 54 | <sourceFolder url="file://$MODULE_DIR$/src/testDebug/resources" type="java-test-resource" /> |
55 | <sourceFolder url="file://$MODULE_DIR$/src/testDebug/assets" type="java-test-resource" /> | 55 | <sourceFolder url="file://$MODULE_DIR$/src/testDebug/assets" type="java-test-resource" /> |
56 | <sourceFolder url="file://$MODULE_DIR$/src/testDebug/aidl" isTestSource="true" /> | 56 | <sourceFolder url="file://$MODULE_DIR$/src/testDebug/aidl" isTestSource="true" /> |
57 | <sourceFolder url="file://$MODULE_DIR$/src/testDebug/java" isTestSource="true" /> | 57 | <sourceFolder url="file://$MODULE_DIR$/src/testDebug/java" isTestSource="true" /> |
58 | <sourceFolder url="file://$MODULE_DIR$/src/testDebug/jni" isTestSource="true" /> | 58 | <sourceFolder url="file://$MODULE_DIR$/src/testDebug/jni" isTestSource="true" /> |
59 | <sourceFolder url="file://$MODULE_DIR$/src/testDebug/rs" isTestSource="true" /> | 59 | <sourceFolder url="file://$MODULE_DIR$/src/testDebug/rs" isTestSource="true" /> |
60 | <sourceFolder url="file://$MODULE_DIR$/src/testDebug/shaders" isTestSource="true" /> | 60 | <sourceFolder url="file://$MODULE_DIR$/src/testDebug/shaders" isTestSource="true" /> |
61 | <sourceFolder url="file://$MODULE_DIR$/src/main/res" type="java-resource" /> | 61 | <sourceFolder url="file://$MODULE_DIR$/src/main/res" type="java-resource" /> |
62 | <sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" /> | 62 | <sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" /> |
63 | <sourceFolder url="file://$MODULE_DIR$/src/main/assets" type="java-resource" /> | 63 | <sourceFolder url="file://$MODULE_DIR$/src/main/assets" type="java-resource" /> |
64 | <sourceFolder url="file://$MODULE_DIR$/src/main/aidl" isTestSource="false" /> | 64 | <sourceFolder url="file://$MODULE_DIR$/src/main/aidl" isTestSource="false" /> |
65 | <sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" /> | 65 | <sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" /> |
66 | <sourceFolder url="file://$MODULE_DIR$/src/main/jni" isTestSource="false" /> | 66 | <sourceFolder url="file://$MODULE_DIR$/src/main/jni" isTestSource="false" /> |
67 | <sourceFolder url="file://$MODULE_DIR$/src/main/rs" isTestSource="false" /> | 67 | <sourceFolder url="file://$MODULE_DIR$/src/main/rs" isTestSource="false" /> |
68 | <sourceFolder url="file://$MODULE_DIR$/src/main/shaders" isTestSource="false" /> | 68 | <sourceFolder url="file://$MODULE_DIR$/src/main/shaders" isTestSource="false" /> |
69 | <sourceFolder url="file://$MODULE_DIR$/src/androidTest/res" type="java-test-resource" /> | ||
70 | <sourceFolder url="file://$MODULE_DIR$/src/androidTest/resources" type="java-test-resource" /> | ||
71 | <sourceFolder url="file://$MODULE_DIR$/src/androidTest/assets" type="java-test-resource" /> | ||
72 | <sourceFolder url="file://$MODULE_DIR$/src/androidTest/aidl" isTestSource="true" /> | ||
73 | <sourceFolder url="file://$MODULE_DIR$/src/androidTest/java" isTestSource="true" /> | ||
74 | <sourceFolder url="file://$MODULE_DIR$/src/androidTest/jni" isTestSource="true" /> | ||
75 | <sourceFolder url="file://$MODULE_DIR$/src/androidTest/rs" isTestSource="true" /> | ||
76 | <sourceFolder url="file://$MODULE_DIR$/src/androidTest/shaders" isTestSource="true" /> | ||
77 | <sourceFolder url="file://$MODULE_DIR$/src/test/res" type="java-test-resource" /> | 69 | <sourceFolder url="file://$MODULE_DIR$/src/test/res" type="java-test-resource" /> |
78 | <sourceFolder url="file://$MODULE_DIR$/src/test/resources" type="java-test-resource" /> | 70 | <sourceFolder url="file://$MODULE_DIR$/src/test/resources" type="java-test-resource" /> |
79 | <sourceFolder url="file://$MODULE_DIR$/src/test/assets" type="java-test-resource" /> | 71 | <sourceFolder url="file://$MODULE_DIR$/src/test/assets" type="java-test-resource" /> |
80 | <sourceFolder url="file://$MODULE_DIR$/src/test/aidl" isTestSource="true" /> | 72 | <sourceFolder url="file://$MODULE_DIR$/src/test/aidl" isTestSource="true" /> |
81 | <sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" /> | 73 | <sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" /> |
82 | <sourceFolder url="file://$MODULE_DIR$/src/test/jni" isTestSource="true" /> | 74 | <sourceFolder url="file://$MODULE_DIR$/src/test/jni" isTestSource="true" /> |
83 | <sourceFolder url="file://$MODULE_DIR$/src/test/rs" isTestSource="true" /> | 75 | <sourceFolder url="file://$MODULE_DIR$/src/test/rs" isTestSource="true" /> |
84 | <sourceFolder url="file://$MODULE_DIR$/src/test/shaders" isTestSource="true" /> | 76 | <sourceFolder url="file://$MODULE_DIR$/src/test/shaders" isTestSource="true" /> |
77 | <sourceFolder url="file://$MODULE_DIR$/src/androidTest/res" type="java-test-resource" /> | ||
78 | <sourceFolder url="file://$MODULE_DIR$/src/androidTest/resources" type="java-test-resource" /> | ||
79 | <sourceFolder url="file://$MODULE_DIR$/src/androidTest/assets" type="java-test-resource" /> | ||
80 | <sourceFolder url="file://$MODULE_DIR$/src/androidTest/aidl" isTestSource="true" /> | ||
81 | <sourceFolder url="file://$MODULE_DIR$/src/androidTest/java" isTestSource="true" /> | ||
82 | <sourceFolder url="file://$MODULE_DIR$/src/androidTest/jni" isTestSource="true" /> | ||
83 | <sourceFolder url="file://$MODULE_DIR$/src/androidTest/rs" isTestSource="true" /> | ||
84 | <sourceFolder url="file://$MODULE_DIR$/src/androidTest/shaders" isTestSource="true" /> | ||
85 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/assets" /> | 85 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/assets" /> |
86 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/blame" /> | 86 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/blame" /> |
87 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/builds" /> | ||
88 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/classes" /> | 87 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/classes" /> |
89 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/dependency-cache" /> | 88 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/dependency-cache" /> |
89 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/GameSDK-release4.1.4/jars" /> | ||
90 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.android.support/appcompat-v7/22.2.0/jars" /> | 90 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.android.support/appcompat-v7/22.2.0/jars" /> |
91 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.android.support/support-v4/22.2.0/jars" /> | 91 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.android.support/support-v4/22.2.0/jars" /> |
92 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental" /> | 92 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental" /> |
93 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental-classes" /> | 93 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental-classes" /> |
94 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental-runtime-classes" /> | 94 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental-runtime-classes" /> |
95 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental-safeguard" /> | 95 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental-safeguard" /> |
96 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental-verifier" /> | 96 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental-verifier" /> |
97 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/instant-run-resources" /> | 97 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/instant-run-resources" /> |
98 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/instant-run-support" /> | 98 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/instant-run-support" /> |
99 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/jniLibs" /> | 99 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/jniLibs" /> |
100 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/manifests" /> | 100 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/manifests" /> |
101 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/pre-dexed" /> | ||
101 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/reload-dex" /> | 102 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/reload-dex" /> |
102 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/res" /> | 103 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/res" /> |
103 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/restart-dex" /> | 104 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/restart-dex" /> |
104 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/rs" /> | 105 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/rs" /> |
105 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/shaders" /> | 106 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/shaders" /> |
106 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/symbols" /> | 107 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/symbols" /> |
107 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/transforms" /> | 108 | <excludeFolder url="file://$MODULE_DIR$/build/intermediates/transforms" /> |
108 | <excludeFolder url="file://$MODULE_DIR$/build/outputs" /> | 109 | <excludeFolder url="file://$MODULE_DIR$/build/outputs" /> |
109 | <excludeFolder url="file://$MODULE_DIR$/build/tmp" /> | 110 | <excludeFolder url="file://$MODULE_DIR$/build/tmp" /> |
110 | </content> | 111 | </content> |
111 | <orderEntry type="jdk" jdkName="Android API 22 Platform" jdkType="Android SDK" /> | 112 | <orderEntry type="jdk" jdkName="Android API 22 Platform" jdkType="Android SDK" /> |
112 | <orderEntry type="sourceFolder" forTests="false" /> | 113 | <orderEntry type="sourceFolder" forTests="false" /> |
GameSDKDemo/build.gradle
1 | apply plugin: 'com.android.application' | 1 | apply plugin: 'com.android.application' |
2 | 2 | ||
3 | repositories{ | 3 | repositories{ |
4 | flatDir{ | 4 | flatDir{ |
5 | dirs 'libs' | 5 | dirs 'libs' |
6 | } | 6 | } |
7 | } | 7 | } |
8 | 8 | ||
9 | android { | 9 | android { |
10 | compileSdkVersion 22 | 10 | compileSdkVersion 22 |
11 | buildToolsVersion "22.0.0" | 11 | buildToolsVersion "22.0.0" |
12 | 12 | ||
13 | 13 | ||
14 | defaultConfig { | 14 | defaultConfig { |
15 | minSdkVersion 9 | 15 | minSdkVersion 9 |
16 | targetSdkVersion 22 | 16 | targetSdkVersion 22 |
17 | versionCode 1 | 17 | versionCode 2 |
18 | versionName "1.0" | 18 | versionName "1.1" |
19 | } | 19 | } |
20 | 20 | ||
21 | buildTypes { | 21 | buildTypes { |
22 | release { | 22 | release { |
23 | minifyEnabled false | 23 | minifyEnabled false |
24 | proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' | 24 | proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' |
25 | } | 25 | } |
26 | } | 26 | } |
27 | lintOptions{ | 27 | lintOptions{ |
28 | abortOnError false | 28 | abortOnError false |
29 | } | 29 | } |
30 | } | 30 | } |
31 | 31 | ||
32 | dependencies { | 32 | dependencies { |
33 | compile fileTree(dir: 'libs', include: ['*.jar']) | 33 | compile fileTree(dir: 'libs', include: ['*.jar']) |
34 | testCompile 'junit:junit:4.12' | 34 | testCompile 'junit:junit:4.12' |
35 | compile 'com.android.support:appcompat-v7:22.2.0' | 35 | compile 'com.android.support:appcompat-v7:22.2.0' |
36 | compile project(':GameSDK') | 36 | // compile project(':GameSDK') |
37 | // compile(name:'GameSDK-release4.1.3',ext:'aar') | 37 | compile(name:'GameSDK-release4.1.4',ext:'aar') |
38 | } | 38 | } |
39 | 39 |
GameSDKDemo/libs/GameSDK-release4.1.3.aar
No preview for this file type
GameSDKDemo/libs/GameSDK-release4.1.4.aar
No preview for this file type
GameSDKDemo/src/main/AndroidManifest.xml
1 | <manifest xmlns:android="http://schemas.android.com/apk/res/android" | 1 | <manifest xmlns:android="http://schemas.android.com/apk/res/android" |
2 | package="com.gumptech.sdk.demo"> | 2 | package="com.gumptech.sdk.demo"> |
3 | 3 | ||
4 | 4 | ||
5 | <uses-sdk | 5 | <uses-sdk |
6 | android:minSdkVersion="9" | 6 | android:minSdkVersion="9" |
7 | android:targetSdkVersion="20" /> | 7 | android:targetSdkVersion="20" /> |
8 | 8 | ||
9 | <uses-permission android:name="android.permission.INTERNET" /> | 9 | <uses-permission android:name="android.permission.INTERNET" /> |
10 | <uses-permission android:name="android.permission.READ_PHONE_STATE" /> | ||
11 | <uses-permission android:name="android.permission.BLUETOOTH" /> | 10 | <uses-permission android:name="android.permission.BLUETOOTH" /> |
12 | <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> | 11 | <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> |
13 | <uses-permission android:name="android.permission.WRITE_SETTINGS" /> | 12 | <uses-permission android:name="android.permission.WRITE_SETTINGS" /> |
14 | <uses-permission android:name="android.permission.GET_ACCOUNTS" /> | ||
15 | <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> | 13 | <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> |
16 | <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> | ||
17 | <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" /> | 14 | <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" /> |
15 | <!-- Danger Level permission--> | ||
16 | <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> | ||
17 | <uses-permission android:name="android.permission.GET_ACCOUNTS" /> | ||
18 | <uses-permission android:name="android.permission.READ_PHONE_STATE" /> | ||
18 | <uses-permission android:name="android.permission.SEND_SMS"/> | 19 | <uses-permission android:name="android.permission.SEND_SMS"/> |
19 | 20 | ||
20 | <!-- VERY IMPORTANT! Don't forget this permission, or in-app billing won't work. --> | 21 | <!-- VERY IMPORTANT! Don't forget this permission, or in-app billing won't work. --> |
21 | <uses-permission android:name="com.android.vending.BILLING" /> | 22 | <uses-permission android:name="com.android.vending.BILLING" /> |
22 | 23 | ||
23 | <application | 24 | <application |
24 | android:allowBackup="true" | 25 | android:allowBackup="true" |
25 | android:icon="@drawable/ic_launcher" | 26 | android:icon="@drawable/ic_launcher" |
27 | |||
26 | android:label="@string/app_name" > | 28 | android:label="@string/app_name" > |
27 | <activity | 29 | <activity |
28 | android:name="com.gumptech.sdk.demo.MainActivity" | 30 | android:name="com.gumptech.sdk.demo.MainActivity" |
29 | android:configChanges="orientation|screenSize|keyboardHidden|keyboard|screenLayout" | 31 | android:configChanges="orientation|screenSize|keyboardHidden|keyboard|screenLayout" |
30 | android:label="@string/app_name" | 32 | android:label="@string/app_name" |
31 | android:screenOrientation="portrait" > | 33 | android:screenOrientation="portrait" > |
32 | <intent-filter> | 34 | <intent-filter> |
33 | <action android:name="android.intent.action.MAIN" /> | 35 | <action android:name="android.intent.action.MAIN" /> |
34 | 36 | ||
35 | <category android:name="android.intent.category.LAUNCHER" /> | 37 | <category android:name="android.intent.category.LAUNCHER" /> |
36 | </intent-filter> | 38 | </intent-filter> |
37 | </activity> | 39 | </activity> |
38 | <activity | 40 | <activity |
39 | android:name="com.gumptech.sdk.ContainerActivity" | 41 | android:name="com.gumptech.sdk.ContainerActivity" |
40 | android:configChanges="orientation|screenSize|keyboardHidden|keyboard|screenLayout" | 42 | android:configChanges="orientation|screenSize|keyboardHidden|keyboard|screenLayout" |
41 | android:windowSoftInputMode="stateAlwaysHidden|adjustPan" | 43 | android:windowSoftInputMode="stateAlwaysHidden|adjustPan" |
42 | android:launchMode="singleTask" | 44 | android:launchMode="singleTask" |
43 | android:theme="@style/Theme.TransparentWin" > | 45 | android:theme="@style/Theme.TransparentWin" > |
44 | </activity> | 46 | </activity> |
45 | <activity | 47 | <activity |
46 | android:name="com.gumptech.sdk.PaymentActivity" | 48 | android:name="com.gumptech.sdk.PaymentActivity" |
47 | android:configChanges="orientation|screenSize|keyboardHidden|keyboard|screenLayout" | 49 | android:configChanges="orientation|screenSize|keyboardHidden|keyboard|screenLayout" |
48 | android:launchMode="singleTask" | 50 | android:launchMode="singleTask" |
49 | android:theme="@android:style/Theme.Translucent.NoTitleBar" > | 51 | android:theme="@android:style/Theme.Translucent.NoTitleBar" > |
50 | <intent-filter> | 52 | <intent-filter> |
51 | <category android:name="android.intent.category.DEFAULT" /> | 53 | <category android:name="android.intent.category.DEFAULT" /> |
52 | 54 | ||
53 | <action android:name="android.intent.action.VIEW" /> | 55 | <action android:name="android.intent.action.VIEW" /> |
54 | 56 | ||
55 | <category android:name="android.intent.category.BROWSABLE" /> | 57 | <category android:name="android.intent.category.BROWSABLE" /> |
56 | 58 | ||
57 | <data | 59 | <data |
58 | android:host="com.gump.sdk" | 60 | android:host="com.gump.sdk" |
59 | android:scheme="gump10031" /> | 61 | android:scheme="gump10031" /> |
60 | </intent-filter> | 62 | </intent-filter> |
61 | </activity> | 63 | </activity> |
62 | <activity | 64 | <activity |
63 | android:name="com.gumptech.sdk.ExchangeWindow" | 65 | android:name="com.gumptech.sdk.ExchangeWindow" |
64 | android:configChanges="orientation|screenSize|keyboardHidden|keyboard|screenLayout" | 66 | android:configChanges="orientation|screenSize|keyboardHidden|keyboard|screenLayout" |
65 | android:theme="@style/Theme.WinForExchange" > | 67 | android:theme="@style/Theme.WinForExchange" > |
66 | </activity> | 68 | </activity> |
67 | 69 | ||
68 | <service android:name="com.gumptech.sdk.PushService" > | 70 | <service android:name="com.gumptech.sdk.PushService" > |
69 | </service> | 71 | </service> |
70 | 72 | ||
71 | <!-- vk --> | 73 | <!-- vk --> |
72 | <!-- <activity android:name="com.vk.com.gumptech.sdk.VKOpenAuthActivity" /> --> | 74 | <!-- <activity android:name="com.vk.com.gumptech.sdk.VKOpenAuthActivity" /> --> |
73 | <!-- <activity --> | 75 | <!-- <activity --> |
74 | <!-- android:name="com.vk.com.gumptech.sdk.VKServiceActivity" --> | 76 | <!-- android:name="com.vk.com.gumptech.sdk.VKServiceActivity" --> |
75 | <!-- android:label="ServiceActivity" --> | 77 | <!-- android:label="ServiceActivity" --> |
76 | <!-- android:theme="@style/VK.Transparent" /> --> | 78 | <!-- android:theme="@style/VK.Transparent" /> --> |
77 | </application> | 79 | </application> |
78 | 80 |
GameSDKDemo/src/main/java/com/gumptech/sdk/demo/MainActivity.java
1 | package com.gumptech.sdk.demo; | 1 | package com.gumptech.sdk.demo; |
2 | 2 | ||
3 | import android.app.Activity; | 3 | import android.app.Activity; |
4 | import android.content.Context; | 4 | import android.content.Context; |
5 | import android.os.Bundle; | 5 | import android.os.Bundle; |
6 | import android.text.ClipboardManager; | 6 | import android.text.ClipboardManager; |
7 | import android.util.Log; | 7 | import android.util.Log; |
8 | import android.view.View; | 8 | import android.view.View; |
9 | import android.widget.Button; | 9 | import android.widget.Button; |
10 | import android.widget.TextView; | 10 | import android.widget.TextView; |
11 | import android.widget.Toast; | 11 | import android.widget.Toast; |
12 | 12 | ||
13 | import com.gumptech.sdk.GumpPreference; | 13 | import com.gumptech.sdk.GumpPreference; |
14 | import com.gumptech.sdk.GumpSDK; | 14 | import com.gumptech.sdk.GumpSDK; |
15 | import com.gumptech.sdk.PaymentVersion; | 15 | import com.gumptech.sdk.PaymentVersion; |
16 | import com.gumptech.sdk.bean.GumpUser; | 16 | import com.gumptech.sdk.bean.GumpUser; |
17 | import com.gumptech.sdk.bean.PurchaseResult; | 17 | import com.gumptech.sdk.bean.PurchaseResult; |
18 | import com.gumptech.sdk.callback.InitializeCallback; | 18 | import com.gumptech.sdk.callback.InitializeCallback; |
19 | import com.gumptech.sdk.callback.LoginStateListener; | 19 | import com.gumptech.sdk.callback.LoginStateListener; |
20 | import com.gumptech.sdk.callback.PurchaseCallback; | 20 | import com.gumptech.sdk.callback.PurchaseCallback; |
21 | import com.gumptech.sdk.passport.fb.FBAccessToken; | 21 | import com.gumptech.sdk.passport.fb.FBAccessToken; |
22 | 22 | ||
23 | public class MainActivity extends Activity implements PurchaseCallback{ | 23 | public class MainActivity extends Activity implements PurchaseCallback { |
24 | 24 | ||
25 | private static final String TAG = "MainActivity"; | 25 | private static final String TAG = "MainActivity"; |
26 | 26 | ||
27 | private TextView tvVersion; | 27 | private TextView tvVersion; |
28 | private TextView userInfo; | 28 | private TextView userInfo; |
29 | 29 | ||
30 | private Button btnLoginOrLogout; | 30 | private Button btnLoginOrLogout; |
31 | 31 | ||
32 | private String appId = "10022"; | 32 | private String appId = "10022"; |
33 | private String appKey = "93a27b0bd99bac3e68a440b48aa421ab"; | 33 | private String appKey = "93a27b0bd99bac3e68a440b48aa421ab"; |
34 | private String sessionKey; | 34 | private String sessionKey; |
35 | 35 | ||
36 | |||
36 | @Override | 37 | @Override |
37 | protected void onCreate(Bundle savedInstanceState) { | 38 | protected void onCreate(Bundle savedInstanceState) { |
38 | super.onCreate(savedInstanceState); | 39 | super.onCreate(savedInstanceState); |
39 | setContentView(R.layout.activity_main); | 40 | setContentView(R.layout.activity_main); |
40 | tvVersion = (TextView) findViewById(R.id.version); | 41 | tvVersion = (TextView) findViewById(R.id.version); |
41 | userInfo = (TextView) findViewById(R.id.user_info); | 42 | userInfo = (TextView) findViewById(R.id.user_info); |
42 | btnLoginOrLogout = (Button) findViewById(R.id.login_or_logout); | 43 | btnLoginOrLogout = (Button) findViewById(R.id.login_or_logout); |
43 | btnLoginOrLogout.setOnClickListener(new View.OnClickListener() { | 44 | btnLoginOrLogout.setOnClickListener(new View.OnClickListener() { |
44 | 45 | ||
45 | @Override | 46 | @Override |
46 | public void onClick(View v) { | 47 | public void onClick(View v) { |
47 | if (btnLoginOrLogout.getTag() == null || (Integer) btnLoginOrLogout.getTag() == 0) | 48 | if (btnLoginOrLogout.getTag() == null || (Integer) btnLoginOrLogout.getTag() == 0) |
48 | GumpSDK.start(MainActivity.this); | 49 | GumpSDK.start(MainActivity.this); |
49 | else | 50 | else |
50 | GumpSDK.logout(MainActivity.this); | 51 | GumpSDK.logout(MainActivity.this); |
51 | } | 52 | } |
52 | }); | 53 | }); |
53 | findViewById(R.id.pay).setOnClickListener(new View.OnClickListener() { | 54 | findViewById(R.id.pay).setOnClickListener(new View.OnClickListener() { |
54 | 55 | ||
55 | @Override | 56 | @Override |
56 | public void onClick(View v) { | 57 | public void onClick(View v) { |
57 | Bundle payInfo = new Bundle(); | 58 | Bundle payInfo = new Bundle(); |
58 | payInfo.putString("product", "test2"); | 59 | payInfo.putString("product", "test2"); |
59 | payInfo.putFloat("amount", 0.1f); | 60 | payInfo.putFloat("amount", 0.1f); |
60 | payInfo.putString("extraInfo", "This is demo!"); | 61 | payInfo.putString("extraInfo", "This is demo!"); |
61 | payInfo.putString("serverId", "100"); | 62 | payInfo.putString("serverId", "100"); |
63 | payInfo.putString("roleId","100123"); | ||
62 | payInfo.putString("sessionKey", sessionKey); | 64 | payInfo.putString("sessionKey", sessionKey); |
63 | GumpSDK.pay(MainActivity.this, payInfo, MainActivity.this); | 65 | GumpSDK.pay(MainActivity.this, payInfo, MainActivity.this); |
64 | } | 66 | } |
65 | }); | 67 | }); |
68 | findViewById(R.id.iap).setOnClickListener(new View.OnClickListener() { | ||
69 | @Override | ||
70 | public void onClick(View v) { | ||
71 | Bundle payInfo = new Bundle(); | ||
72 | payInfo.putString("product", "gp_skuId"); | ||
73 | payInfo.putFloat("amount", 0.1f); | ||
74 | payInfo.putString("extraInfo", "This is demo!"); | ||
75 | payInfo.putString("serverId", "100"); | ||
76 | payInfo.putString("roleId","100123"); | ||
77 | GumpSDK.iap(MainActivity.this, payInfo, MainActivity.this); | ||
78 | } | ||
79 | }); | ||
66 | /** | 80 | /** |
67 | * 设置否是打印debug日志 | 81 | * 设置否是打印debug日志 |
68 | */ | 82 | */ |
69 | GumpSDK.getSettings().enableDebugLogging(true); | 83 | GumpSDK.getSettings().enableDebugLogging(true); |
70 | /** | 84 | /** |
71 | * 设置是否启用facebook登录 | 85 | * 设置是否启用facebook登录 |
72 | */ | 86 | */ |
73 | GumpSDK.getSettings().setFBEnable(true); | 87 | GumpSDK.getSettings().setFBEnable(true); |
74 | /** | 88 | /** |
75 | * 设置是否启用Vk登录 | 89 | * 设置是否启用Vk登录 |
76 | */ | 90 | */ |
77 | GumpSDK.getSettings().setVKEnable(false); | 91 | GumpSDK.getSettings().setVKEnable(false); |
78 | /** | 92 | /** |
79 | * 设置屏幕方向 | 93 | * 设置屏幕方向 |
80 | */ | 94 | */ |
81 | GumpSDK.getSettings().setScreenLandscape(true); | 95 | GumpSDK.getSettings().setScreenLandscape(true); |
82 | 96 | ||
83 | /** | 97 | /** |
84 | * 设置支付版本 | 98 | * 设置支付版本 |
85 | */ | 99 | */ |
86 | GumpSDK.getSettings().setPaymentVersion(PaymentVersion.V4); | 100 | GumpSDK.getSettings().setPaymentVersion(PaymentVersion.V4); |
87 | 101 | ||
88 | /** | 102 | /** |
89 | * 设置用户登录状态监听器 | 103 | * 设置用户登录状态监听器 |
90 | */ | 104 | */ |
91 | 105 | ||
92 | GumpSDK.setUserStateListener(new LoginStateListener() { | 106 | GumpSDK.setUserStateListener(new LoginStateListener() { |
93 | @Override | 107 | @Override |
94 | public void onLoginSuccess(GumpUser user) { | 108 | public void onLoginSuccess(GumpUser user) { |
95 | ClipboardManager cm = (ClipboardManager) getSystemService(Context.CLIPBOARD_SERVICE); | 109 | ClipboardManager cm = (ClipboardManager) getSystemService(Context.CLIPBOARD_SERVICE); |
96 | cm.setText(user.getSessionKey()); | 110 | cm.setText(user.getSessionKey()); |
97 | sessionKey = user.getSessionKey(); | 111 | sessionKey = user.getSessionKey(); |
98 | String userType=null; | 112 | String userType = null; |
99 | switch(user.getAccountType()){ | 113 | switch (user.getAccountType()) { |
100 | case GumpPreference.ACCOUNT_TYPE_FB: | 114 | case GumpPreference.ACCOUNT_TYPE_FB: |
101 | userType = "Facebook登录"; | 115 | userType = "Facebook登录"; |
102 | String fbToken = FBAccessToken.getCurrentAccessToken().getToken(); | 116 | String fbToken = FBAccessToken.getCurrentAccessToken().getToken(); |
103 | Log.d(TAG,"FBAccessToken:"+fbToken); | 117 | Log.d(TAG, "FBAccessToken:" + fbToken); |
104 | break; | 118 | break; |
105 | case GumpPreference.ACCOUNT_TYPE_QUICK_REG: | 119 | case GumpPreference.ACCOUNT_TYPE_QUICK_REG: |
106 | userType = "快速登录"; | 120 | userType = "快速登录"; |
107 | break; | 121 | break; |
108 | case GumpPreference.ACCOUNT_TYPE_REG: | 122 | case GumpPreference.ACCOUNT_TYPE_REG: |
109 | userType = "gump注册用户"; | 123 | userType = "gump注册用户"; |
110 | break; | 124 | break; |
111 | case GumpPreference.ACCOUNT_TYPE_VK: | 125 | case GumpPreference.ACCOUNT_TYPE_VK: |
112 | userType = "vk登录"; | 126 | userType = "vk登录"; |
113 | break; | 127 | break; |
114 | } | 128 | } |
115 | userInfo.setText(" Userid:" + user.getUid() + "\n accountType:(" + user.getAccountType()+") "+userType + "\n sessionKey:" + user.getSessionKey()); | 129 | userInfo.setText(" Userid:" + user.getUid() + "\n accountType:(" + user.getAccountType() + ") " + userType + "\n sessionKey:" + user.getSessionKey()); |
116 | btnLoginOrLogout.setText("Logout"); | 130 | btnLoginOrLogout.setText("Logout"); |
117 | btnLoginOrLogout.setTag(1); | 131 | btnLoginOrLogout.setTag(1); |
118 | } | 132 | } |
119 | 133 | ||
120 | @Override | 134 | @Override |
121 | public void onLoginFailed(int code, String msg) { | 135 | public void onLoginFailed(int code, String msg) { |
122 | userInfo.setText(msg); | 136 | userInfo.setText(msg); |
123 | Toast.makeText(MainActivity.this, "Login failed:code="+code+",message="+msg, Toast.LENGTH_SHORT).show(); | 137 | Toast.makeText(MainActivity.this, "Login failed:code=" + code + ",message=" + msg, Toast.LENGTH_SHORT).show(); |
124 | } | 138 | } |
125 | 139 | ||
126 | @Override | 140 | @Override |
127 | public void onLoginCanceled() { | 141 | public void onLoginCanceled() { |
128 | Toast.makeText(MainActivity.this, "operate be canceled", Toast.LENGTH_SHORT).show(); | 142 | Toast.makeText(MainActivity.this, "operate be canceled", Toast.LENGTH_SHORT).show(); |
129 | } | 143 | } |
130 | 144 | ||
131 | @Override | 145 | @Override |
132 | public void onLogout() { | 146 | public void onLogout() { |
133 | btnLoginOrLogout.setText("Login"); | 147 | btnLoginOrLogout.setText("Login"); |
134 | btnLoginOrLogout.setTag(0); | 148 | btnLoginOrLogout.setTag(0); |
135 | userInfo.setText("User is logout"); | 149 | userInfo.setText("User is logout"); |
136 | } | 150 | } |
137 | }); | 151 | }); |
138 | /** | 152 | /** |
139 | * 初始化sdk | 153 | * 初始化sdk |
140 | */ | 154 | */ |
141 | GumpSDK.init(getApplicationContext(), appId, appKey, "1000", new InitializeCallback() { | 155 | GumpSDK.init(getApplicationContext(), appId, appKey, "1000", new InitializeCallback() { |
142 | @Override | 156 | @Override |
143 | public void initComplete(int result) { | 157 | public void initComplete(int result) { |
144 | if (result == GumpSDK.CODE.OK) { | 158 | if (result == GumpSDK.CODE.OK) { |
145 | btnLoginOrLogout.setEnabled(true); | 159 | btnLoginOrLogout.setEnabled(true); |
146 | } | 160 | } |
147 | } | 161 | } |
148 | }); | 162 | }); |
149 | 163 | ||
150 | tvVersion.setText("SDK Version:" + GumpSDK.getVersion()); | 164 | tvVersion.setText("SDK Version:" + GumpSDK.getVersion()); |
165 | |||
151 | } | 166 | } |
152 | 167 | ||
153 | @Override | 168 | @Override |
154 | public void onPurchaseCompleted(PurchaseResult result) { | 169 | public void onPurchaseCompleted(PurchaseResult result) { |
155 | Log.i(TAG,"purchase completed"); | 170 | Log.i(TAG, "purchase completed"); |
156 | } | 171 | } |
157 | 172 | ||
158 | @Override | 173 | @Override |
159 | public void onPurchaseError(int code, String msg) { | 174 | public void onPurchaseError(int code, String msg) { |
160 | Log.i(TAG,"purchase error"); | 175 | Log.i(TAG, "purchase error"); |
161 | } | 176 | } |
162 | 177 | ||
163 | @Override | 178 | @Override |
164 | public void onPurchaseCanceled() { | 179 | public void onPurchaseCanceled() { |
165 | Log.i(TAG,"purchase canceled"); | 180 | Log.i(TAG, "purchase canceled"); |
166 | } | 181 | } |
182 | |||
183 | |||
167 | } | 184 | } |
168 | 185 |
GameSDKDemo/src/main/res/layout/activity_main.xml
1 | <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" | 1 | <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" |
2 | android:layout_width="match_parent" | 2 | android:layout_width="match_parent" |
3 | android:layout_height="match_parent" | 3 | android:layout_height="match_parent" |
4 | android:background="@android:color/white" | 4 | android:background="@android:color/white" |
5 | android:orientation="vertical" > | 5 | android:orientation="vertical"> |
6 | 6 | ||
7 | <TextView | 7 | <TextView |
8 | android:id="@+id/version" | 8 | android:id="@+id/version" |
9 | android:layout_width="wrap_content" | 9 | android:layout_width="wrap_content" |
10 | android:layout_height="wrap_content" | 10 | android:layout_height="wrap_content" |
11 | android:layout_gravity="center_horizontal" | 11 | android:layout_gravity="center_horizontal" |
12 | android:textColor="@color/black_text" /> | 12 | android:textColor="@color/black_text" /> |
13 | 13 | ||
14 | <TextView | 14 | <TextView |
15 | android:id="@+id/user_info" | 15 | android:id="@+id/user_info" |
16 | android:layout_width="wrap_content" | 16 | android:layout_width="match_parent" |
17 | android:layout_height="wrap_content" | 17 | android:layout_height="wrap_content" |
18 | android:textColor="@android:color/black" /> | 18 | android:textColor="@android:color/black" /> |
19 | 19 | ||
20 | <Button | 20 | <Button |
21 | android:id="@+id/login_or_logout" | 21 | android:id="@+id/login_or_logout" |
22 | android:layout_width="wrap_content" | 22 | android:layout_width="match_parent" |
23 | android:layout_height="wrap_content" | 23 | android:layout_height="wrap_content" |
24 | android:backgroundTint="@color/g_color" | ||
24 | android:enabled="false" | 25 | android:enabled="false" |
25 | android:text="Login" /> | 26 | android:text="Login" /> |
27 | <Button | ||
28 | android:id="@+id/iap" | ||
29 | android:layout_width="match_parent" | ||
30 | android:layout_height="wrap_content" | ||
31 | android:backgroundTint="@color/g_color" | ||
32 | android:text="IAP"/> | ||
26 | 33 | ||
27 | <Button | 34 | <Button |
28 | android:id="@+id/pay" | 35 | android:id="@+id/pay" |
29 | android:layout_width="wrap_content" | 36 | android:layout_width="match_parent" |
30 | android:layout_height="wrap_content" | 37 | android:layout_height="wrap_content" |
38 | android:backgroundTint="@color/g_color" | ||
31 | android:text="pay" /> | 39 | android:text="pay" /> |
32 | 40 | ||
33 | </LinearLayout> | 41 | </LinearLayout> |
GameSDKDemo/src/main/res/values/colors.xml
1 | <?xml version="1.0" encoding="utf-8"?> | 1 | <?xml version="1.0" encoding="utf-8"?> |
2 | <resources> | 2 | <resources> |
3 | <color name="colorPrimary">#3F51B5</color> | 3 | <color name="colorPrimary">#3F51B5</color> |
4 | <color name="colorPrimaryDark">#303F9F</color> | 4 | <color name="colorPrimaryDark">#303F9F</color> |
5 | <color name="colorAccent">#FF4081</color> | 5 | <color name="colorAccent">#FF4081</color> |
6 | <color name="g_color">#55BCDC</color> | ||
6 | </resources> | 7 | </resources> |
7 | 8 |
GameSDKDemo/src/main/res/values/styles.xml
1 | <resources> | 1 | <resources> |
2 | 2 | ||
3 | <!-- Base application theme. --> | 3 | <!-- Base application theme. --> |
4 | <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> | 4 | <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar"> |
5 | <!-- Customize your theme here. --> | 5 | <!-- Customize your theme here. --> |
6 | <item name="colorPrimary">@color/colorPrimary</item> | 6 | <item name="colorPrimary">@color/colorPrimary</item> |
7 | <item name="colorPrimaryDark">@color/colorPrimaryDark</item> | 7 | <item name="colorPrimaryDark">@color/colorPrimaryDark</item> |
8 | <item name="colorAccent">@color/colorAccent</item> | 8 | <item name="colorAccent">@color/colorAccent</item> |
9 | </style> | 9 | </style> |
10 | 10 | ||
11 | </resources> | 11 | </resources> |
12 | 12 |