summaryrefslogtreecommitdiffstats
path: root/mobile/android/thirdparty/com/adjust/sdk/Reflection.java
diff options
context:
space:
mode:
Diffstat (limited to 'mobile/android/thirdparty/com/adjust/sdk/Reflection.java')
-rw-r--r--mobile/android/thirdparty/com/adjust/sdk/Reflection.java210
1 files changed, 0 insertions, 210 deletions
diff --git a/mobile/android/thirdparty/com/adjust/sdk/Reflection.java b/mobile/android/thirdparty/com/adjust/sdk/Reflection.java
deleted file mode 100644
index d9d9a9dbc..000000000
--- a/mobile/android/thirdparty/com/adjust/sdk/Reflection.java
+++ /dev/null
@@ -1,210 +0,0 @@
-package com.adjust.sdk;
-
-import android.content.Context;
-
-import com.adjust.sdk.plugin.Plugin;
-
-import java.lang.reflect.Constructor;
-import java.lang.reflect.Field;
-import java.lang.reflect.Method;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import static com.adjust.sdk.Constants.PLUGINS;
-
-public class Reflection {
-
- public static String getPlayAdId(Context context) {
- try {
- Object AdvertisingInfoObject = getAdvertisingInfoObject(context);
-
- String playAdid = (String) invokeInstanceMethod(AdvertisingInfoObject, "getId", null);
-
- return playAdid;
- } catch (Throwable t) {
- return null;
- }
- }
-
- public static Boolean isPlayTrackingEnabled(Context context) {
- try {
- Object AdvertisingInfoObject = getAdvertisingInfoObject(context);
-
- Boolean isLimitedTrackingEnabled = (Boolean) invokeInstanceMethod(AdvertisingInfoObject, "isLimitAdTrackingEnabled", null);
-
- return !isLimitedTrackingEnabled;
- } catch (Throwable t) {
- return null;
- }
- }
-
- public static boolean isGooglePlayServicesAvailable(Context context) {
- try {
- Integer isGooglePlayServicesAvailableStatusCode = (Integer) invokeStaticMethod(
- "com.google.android.gms.common.GooglePlayServicesUtil",
- "isGooglePlayServicesAvailable",
- new Class[]{Context.class}, context
- );
-
- boolean isGooglePlayServicesAvailable = (Boolean) isConnectionResultSuccess(isGooglePlayServicesAvailableStatusCode);
-
- return isGooglePlayServicesAvailable;
- } catch (Throwable t) {
- return false;
- }
- }
-
- public static String getMacAddress(Context context) {
- try {
- String macSha1 = (String) invokeStaticMethod(
- "com.adjust.sdk.plugin.MacAddressUtil",
- "getMacAddress",
- new Class[]{Context.class}, context
- );
-
- return macSha1;
- } catch (Throwable t) {
- return null;
- }
- }
-
- public static String getAndroidId(Context context) {
- try {
- String androidId = (String) invokeStaticMethod("com.adjust.sdk.plugin.AndroidIdUtil", "getAndroidId"
- , new Class[]{Context.class}, context);
-
- return androidId;
- } catch (Throwable t) {
- return null;
- }
- }
-
- public static String getSha1EmailAddress(Context context, String key) {
- try {
- String sha1EmailAddress = (String) invokeStaticMethod("com.adjust.sdk.plugin.EmailUtil", "getSha1EmailAddress"
- , new Class[]{Context.class, String.class}, context, key);
-
- return sha1EmailAddress;
- } catch (Throwable t) {
- return null;
- }
- }
-
- private static Object getAdvertisingInfoObject(Context context)
- throws Exception {
- return invokeStaticMethod("com.google.android.gms.ads.identifier.AdvertisingIdClient",
- "getAdvertisingIdInfo",
- new Class[]{Context.class}, context
- );
- }
-
- private static boolean isConnectionResultSuccess(Integer statusCode) {
- if (statusCode == null) {
- return false;
- }
-
- try {
- Class ConnectionResultClass = Class.forName("com.google.android.gms.common.ConnectionResult");
-
- Field SuccessField = ConnectionResultClass.getField("SUCCESS");
-
- int successStatusCode = SuccessField.getInt(null);
-
- return successStatusCode == statusCode;
- } catch (Throwable t) {
- return false;
- }
- }
-
- public static Class forName(String className) {
- try {
- Class classObject = Class.forName(className);
- return classObject;
- } catch (Throwable t) {
- return null;
- }
- }
-
- public static Object createDefaultInstance(String className) {
- Class classObject = forName(className);
- Object instance = createDefaultInstance(classObject);
- return instance;
- }
-
- public static Object createDefaultInstance(Class classObject) {
- try {
- Object instance = classObject.newInstance();
- return instance;
- } catch (Throwable t) {
- return null;
- }
- }
-
- public static Object createInstance(String className, Class[] cArgs, Object... args) {
- try {
- Class classObject = Class.forName(className);
- @SuppressWarnings("unchecked")
- Constructor constructor = classObject.getConstructor(cArgs);
- Object instance = constructor.newInstance(args);
- return instance;
- } catch (Throwable t) {
- return null;
- }
- }
-
- public static Object invokeStaticMethod(String className, String methodName, Class[] cArgs, Object... args)
- throws Exception {
- Class classObject = Class.forName(className);
-
- return invokeMethod(classObject, methodName, null, cArgs, args);
- }
-
- public static Object invokeInstanceMethod(Object instance, String methodName, Class[] cArgs, Object... args)
- throws Exception {
- Class classObject = instance.getClass();
-
- return invokeMethod(classObject, methodName, instance, cArgs, args);
- }
-
- public static Object invokeMethod(Class classObject, String methodName, Object instance, Class[] cArgs, Object... args)
- throws Exception {
- @SuppressWarnings("unchecked")
- Method methodObject = classObject.getMethod(methodName, cArgs);
-
- Object resultObject = methodObject.invoke(instance, args);
-
- return resultObject;
- }
-
- public static Map<String, String> getPluginKeys(Context context) {
- Map<String, String> pluginKeys = new HashMap<String, String>();
-
- for (Plugin plugin : getPlugins()) {
- Map.Entry<String, String> pluginEntry = plugin.getParameter(context);
- if (pluginEntry != null) {
- pluginKeys.put(pluginEntry.getKey(), pluginEntry.getValue());
- }
- }
-
- if (pluginKeys.size() == 0) {
- return null;
- } else {
- return pluginKeys;
- }
- }
-
- private static List<Plugin> getPlugins() {
- List<Plugin> plugins = new ArrayList<Plugin>(PLUGINS.size());
-
- for (String pluginName : PLUGINS) {
- Object pluginObject = Reflection.createDefaultInstance(pluginName);
- if (pluginObject != null && pluginObject instanceof Plugin) {
- plugins.add((Plugin) pluginObject);
- }
- }
-
- return plugins;
- }
-}