Experimental v87a now up!

Monkey Forums/Monkey Programming/Experimental v87a now up!

marksibly(Posted 2016) [#1]
Hi,

I've just uploaded experimental v87a.

The big change in this release is to the android target, which now uses google play services v8.4.0.

If you're using the old android target and the admob features, you should update to this version ASAP, as apparently ads using the old admob sdk will stop working on Sep 15.

If you're having any problems with the new android target, please post a bug report.

I have also deprecated a number of targets in this release - see below for more details.

Bye!
Mark


***** v87a *****

Android target has been modified to build with sdk-24, and create apps for minSdk=10 (Gingerbread) and targetSdk=23 (Marshmallow and greater).

Updated android google play services to 8.4.0 through several dark and mysterious processes. This means admob apps should continue to function after Sep 15. This apparently doesn't apply to ios, so I've left the ios target alone for now - one thing at a time, and I doubt this is the end of the android target upgrade saga.

Implemented secondgear's fix for android soft keyboard backspace failure on minSdk>15.

Deprecated a bunch of targets: old android targets, glfw2, psm, xna. There is either no longer any way to publish for these targets, or they have been superceded by new targets. Left android ouya as there is still, somewhat to my surprise, an ouya store online. Deprecated targets have been moved to a __deprecated__ subdir so you can move them back to targets if you want to use them - at your own risk.




Xaron(Posted 2016) [#2]
Thanks Mark! :)


Mahan(Posted 2016) [#3]
Thanks!


therevills(Posted 2016) [#4]
Thank you Mark! I'll have a play on the weekend when I get some free time!


muruba(Posted 2016) [#5]
Great, thanks!!!


Amon(Posted 2016) [#6]
Thank you!


Gerry Quinn(Posted 2016) [#7]
Thanks, will be checking it out shortly.


SLotman(Posted 2016) [#8]
Every Android that uses Admob will stop working if not updated?! This is a nightmare...

Arg. Cannot run a single "mojo1" or my old targets in this new release... all I get is a black screen (but apparently the game is running on background, just won't show anything but a black screen, and read no input whatsoever...)

Edit: this is not specific to this release though... tested from Monkey 77f to this one, all with the same problem :(
Just 77b works for me :/

Edit 2: If I copy the old mojo from 77b into new versions of Monkey, my old targets all work. Maybe something with what shows in Monkey's 77f "versions.txt" saying that swapinterval was changed from mojo into the targets?

Edit 3: Tried adding glfwSwapBuffers(); after "RenderGame()" but no go.Still no images with current mojo1 :(

Edit 4: Copied most of the BBGlVideoMode from 77c into my custom GLFW2 target, and now it runs... have to understand now what's going on, so I can make my DX9 target to run too :(


SLotman(Posted 2016) [#9]
Ok, installed a bunch of things, fixed my "orientation" string (old SDK had a type, which I had to use sensorPortait" and now changed to "sensorPortrait" and I can compile stuff.

But, using admob (even the sample under mak/admobtest) is crashing under the bluestacks emulator. Still going to try on real device.

Edit: Seems to work on my Samsung tablet... hoping for the best :)


therevills(Posted 2016) [#10]
Every Android that uses Admob will stop working if not updated?! This is a nightmare...

I dont think the app will stop working, but the ads will... but I guess time will tell!

I'm currently on a deadline BMX project which needs to be finished in the next couple of months, so I wont be able to update my Android apps until September anyway!!


SLotman(Posted 2016) [#11]
Arg, now when I try to upload my perfectly fine working APK to Google Play, it complains, saying "You uploaded a debuggable APK" :(

I have already deleted the build folder over an over, made sure I'm compiling in release mode, signed with the same key as before... the only difference is that now I'm signing it through command line - after I installed those SDK updated, eclipse is going nuts due to "Android N", so I can't compile / sign code over there :(

This is what I'm using to sign the APK:


Then I verify it, and everything seems to be ok:


And then I zip align-it:


Am I doing something wrong?
BTW: If someone has any info on Eclipse compiling code with Android N, I'd appreciate it. I usually have my android games converted to Blackberry Playbook - and it will be really hard to do it without Eclipse (if not impossible...)


SLotman(Posted 2016) [#12]
Urg, maybe its a problem with Monkey? I see this in the debug window when I hit compile:
"[echo] Building Libraries with 'debug'..."

also:
[apkbuilder] Creating MonkeyGame-debug-unaligned.apk and signing it with a debug key...

and also:
-do-debug:
[zipalign] Running zip align on final apk...
[echo] Debug Package: C:\Apps\Linguagens\Monkey\projects\ginasta\ginasta.buildv87a\android\bin\MonkeyGame-debug.apk


Edit: I think I found the culprit: there is at least two BuildConfig.java file with something like this:

/** Automatically generated file. DO NOT MODIFY */
package com.google.android.gms;

public final class BuildConfig {
public final static boolean DEBUG = true;
}


SLotman(Posted 2016) [#13]
FOUND IT!

You now need to add in AndroidManifest.xml a tag debuggable=false in the APPLICATION, like this:

<application android:label="Ginasta" android:icon="@drawable/icon" android:debuggable="false">


This made Google accept my new apk. Damn....


Gerry Quinn(Posted 2016) [#14]
Didn't you always have to do this? [Maybe there was an automagical option I didn't know about.]


SLotman(Posted 2016) [#15]
Didn't you always have to do this? [Maybe there was an automagical option I didn't know about.]

Not AFAIK. I even released a game this year, and didn't have to do it.

As I could understand, this is needed when you use external libs (as in google services) - so the builder will default to debug mode if it doesn't fine this "debuggable=false" in the application. Why it didn't trigger when using the old admob sdk, I have no clue.

The even weird part is that I can't use this new admob in emulators - everytime it tries to fetch an add, it crashes (both in Bluestacks and in regular emulator). Seems to be working on real devices, so fingers crossed here :)

I updated my latest game to see if it gives me any problem. Still have to check with fullscreen ads and with some other (older) games I made.


SLotman(Posted 2016) [#16]
This is the error I get in the log when the game crashes when trying to request an ad on emulators:


This could be the explanation / solution to this problem, but I don't know exactly what to do yet...


SLotman(Posted 2016) [#17]
Actually, according to Google, this bug happens with minSdkVersion 20 or lower, and target devices running Android 4.4 (API level 20) or lower - nothing to do with the emulator itself.
Source: https://developer.android.com/studio/build/multidex.html#about

Have tried everything suggested I could find to enable multidex in android 4.4 or lower... couldn't get it to work though :(

Another thing: if no ads are loaded, then we get a black "rect" where it would appear. I've changed this on admob.monkey:


Note the android:theme in the end - this is what I added to fix the problem.But it didn't fix it - I still have a black rectangle if the ad didn't load :(


SLotman(Posted 2016) [#18]
Progress!

Just copy android-sdk\extras\android\compatibility\v4\android-support-v4.jar to
(your build)\android\google-play-services_lib\libs

Recompile and it shouldn't crash. Ads will show! (wrong on Bluestacks - but I could even click them, on official emulator it showed a test banner...?!)


Xaron(Posted 2016) [#19]
I just saw that there is a version 87b. What's new in this version? The version.txt file still shows only 87a...


Xaron(Posted 2016) [#20]
Nobody knows?


therevills(Posted 2016) [#21]
Just did a KDiff on 87a and 87b, think it was just a fix for IP6 support... some new empty folders were added too.


Xaron(Posted 2016) [#22]
Awww thanks!


EdzUp(Posted March) [#23]
So does monkey support IPV6 now or not?


Xaron(Posted March) [#24]
I don't know and actually I start to don't care anymore... :(