m1ga/ti.dfp

Support for FLUID adSizes

arifje opened this issue · 1 comments

update; I gave it a try and changed some code so the FLUID adSize would be supported, but I am bumping into some errors;

code I changed in View.java

Original;

for (int i = 0; i < adSizes.length; i++) {
	Map<String,Integer> hm = (Map<String,Integer>) adSizes[i];

	// You now have a HashMap!
	Log.d (TAG, "[ti.dfp] " + hm);

	DfpModule.AD_SIZES[i] = new AdSize(hm.get("width"), hm.get("height"));
}

To:

for (int i = 0; i < adSizes.length; i++) {
	Map<String,Integer> hm = (Map<String,Integer>) adSizes[i];

	Log.i (TAG, "[ti.dfp] " + hm);
					
	// check for fluid
	if( String.valueOf(hm.get("width")).toLowerCase().equals("fluid") || String.valueOf(hm.get("height")).toLowerCase().equals("fluid") ) {
		
		Log.i(TAG, "[ti.dfp] fluid adSize detected");
		
		DfpModule.AD_SIZES[i] = AdSize.FLUID;
		
	// default adsize
	} else {
		DfpModule.AD_SIZES[i] = new AdSize(hm.get("width"), hm.get("height"));
	}
}

Errors:

[INFO] :   I/ti.dfp.View: (main) [1,14464] [ti.dfp] {height=fluid, width=fluid}
[INFO] :   I/ti.dfp.View: (main) [0,14464] [ti.dfp] fluid adSize detected
[INFO] :   I/ti.dfp.View: (main) [1,14465] [ti.dfp] createView()
[ERROR] :  GooglePlayServicesUtil: The Google Play services resources were not found. Check your project configuration to ensure that the resources are included.
[WARN] :   System: ClassLoader referenced unknown path:
[WARN] :   System: ClassLoader referenced unknown path: /data/user_de/0/com.google.android.gms/app_chimera/m/00000024/n/armeabi-v7a
[WARN] :   System: ClassLoader referenced unknown path: /data/user_de/0/com.google.android.gms/app_chimera/m/00000024/n/armeabi
[WARN] :   art: Before Android 4.1, method double java.util.concurrent.ThreadLocalRandom.internalNextDouble(double, double) would have incorrectly overridden the package-private method in java.util.Random
[WARN] :   art: Before Android 4.1, method int java.util.concurrent.ThreadLocalRandom.internalNextInt(int, int) would have incorrectly overridden the package-private method in java.util.Random
[WARN] :   art: Before Android 4.1, method long java.util.concurrent.ThreadLocalRandom.internalNextLong(long, long) would have incorrectly overridden the package-private method in java.util.Random
[INFO] :   art: Background partial concurrent mark sweep GC freed 51813(5MB) AllocSpace objects, 41(2MB) LOS objects, 31%% free, 34MB/50MB, paused 959us total 107.517ms
[INFO] :   Ads: Starting ad request.
[INFO] :   Ads: Use AdRequest.Builder.addTestDevice("A19F3DA790F3F2D9C494CA579C39BDE8") to get test ads on this device.
[INFO] :   Choreographer: Skipped 39 frames!  The application may be doing too much work on its main thread.
[WARN] :   Ads: Invoke Firebase method getInstance error.
[WARN] :   Ads: java.lang.ClassNotFoundException: Didn't find class "com.google.android.gms.measurement.AppMeasurement" on path: DexPathList[[zip file "/data/app/skoften.android.app-2/base.apk"],nativeLibraryDirectories=[/data/app/skoften.android.app-2/lib/arm, /system/fake-libs, /data/app/skoften.android.app-2/base.apk!/lib/armeabi-v7a, /system/lib, /vendor/lib]]
[WARN] :   Ads: 	at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
[WARN] :   Ads: 	at java.lang.ClassLoader.loadClass(ClassLoader.java:380)
[WARN] :   Ads: 	at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
[WARN] :   Ads: 	at com.google.android.gms.ads.internal.scionintegration.b.a(:com.google.android.gms.DynamiteModulesA:167)
[WARN] :   Ads: 	at com.google.android.gms.ads.internal.scionintegration.b.a(:com.google.android.gms.DynamiteModulesA:152)
[WARN] :   Ads: 	at com.google.android.gms.ads.internal.scionintegration.b.g(:com.google.android.gms.DynamiteModulesA:43)
[WARN] :   Ads: 	at com.google.android.gms.ads.internal.request.c.a(:com.google.android.gms.DynamiteModulesA:26)
[WARN] :   Ads: 	at com.google.android.gms.ads.internal.util.b.run(:com.google.android.gms.DynamiteModulesA:4)
[WARN] :   Ads: 	at com.google.android.gms.ads.internal.util.af.call(:com.google.android.gms.DynamiteModulesA:3)
[WARN] :   Ads: 	at com.google.android.gms.ads.internal.util.ag.run(:com.google.android.gms.DynamiteModulesA:3)
[WARN] :   Ads: 	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:428)
[WARN] :   Ads: 	at java.util.concurrent.FutureTask.run(FutureTask.java:237)
[WARN] :   Ads: 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
[WARN] :   Ads: 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
[WARN] :   Ads: 	at java.lang.Thread.run(Thread.java:762)
[WARN] :   Ads: The Google Mobile Ads SDK will not integrate with Firebase. Admob/Firbase integration requires the latest Firebase SDK jar, but Firebase SDK is either missing or out of date

Any help would be appreciated. Thanks!