Indie Dev

Hello Guest!. Register a free account today to become a member! Once signed in, you'll be able to participate on this site by adding your own topics and posts, sell your games, upload content, as well as connect with other members through your own private inbox!

[SOLVED] Can I call functions from MainActivity.java within a *.js plugin?

CT_Bolt

Global Moderator
Staff member
Resource Team
Xy$
0.02
Ok this might be a bizarre question but I have been developing my game app using android studio with the gradle wrapper.

I have a function to show a rewarded video set in my MainActivity class and would like to call the function from a plugin.

Here is my MainActivity class:
JavaScript:
package com.ctbolt.app;

import android.os.Bundle;
import org.apache.cordova.*;

import com.google.android.gms.ads.AdRequest;
import com.google.android.gms.ads.MobileAds;
import com.google.android.gms.ads.reward.RewardItem;
import com.google.android.gms.ads.reward.RewardedVideoAd;
import com.google.android.gms.ads.reward.RewardedVideoAdListener;

import android.app.Activity;
import android.os.CountDownTimer;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;

public class MainActivity extends CordovaActivity implements RewardedVideoAdListener {

    private static final String AD_UNIT_ID = "ca-app-pub-xxxxxxxxxxxxx/xxxxxxxxxx";
    private static final String APP_ID = "ca-app-pub-xxxxxxxxxxxxx";
    private static final long COUNTER_TIME = 10;
    private static final int GAME_OVER_REWARD = 1;


    private int mCoinCount;
    private TextView mCoinCountText;
    private CountDownTimer mCountDownTimer;
    private boolean mGameOver;
    private boolean mGamePaused;
    private RewardedVideoAd mRewardedVideoAd;
    private Button mRetryButton;
    private Button mShowVideoButton;
    private long mTimeRemaining;

    private RewardedVideoAd mAd;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //setContentView(R.layout.activity_main);

        MobileAds.initialize(this, APP_ID);

        mRewardedVideoAd = MobileAds.getRewardedVideoAdInstance(this);
        mRewardedVideoAd.setRewardedVideoAdListener(this);
        loadRewardedVideoAd();

        // Set by <content src="index.html" /> in config.xml
        loadUrl(launchUrl);
    }

    @Override
    public void onPause() {
        super.onPause();
        pauseGame();
        mRewardedVideoAd.pause(this);
    }

    @Override
    public void onResume() {
        super.onResume();
        if (!mGameOver && mGamePaused) {
            resumeGame();
        }
        mRewardedVideoAd.resume(this);
    }

    private void pauseGame() {
        mCountDownTimer.cancel();
        mGamePaused = true;
    }

    private void resumeGame() {
        mGamePaused = false;
    }

    private void loadRewardedVideoAd() {
        if (!mRewardedVideoAd.isLoaded()) {
            mRewardedVideoAd.loadAd(AD_UNIT_ID, new AdRequest.Builder().build());
        }
    }

    private void addCoins(int coins) {
        mCoinCount = mCoinCount + coins;
        mCoinCountText.setText("Coins: " + mCoinCount);
    }

    private void startGame() {
        // Hide the retry button, load the ad, and start the timer.
        mRetryButton.setVisibility(View.INVISIBLE);
        mShowVideoButton.setVisibility(View.INVISIBLE);
        loadRewardedVideoAd();
        mGamePaused = false;
        mGameOver = false;
    }

    private void showRewardedVideo() {
        mShowVideoButton.setVisibility(View.INVISIBLE);
        if (mRewardedVideoAd.isLoaded()) {
            mRewardedVideoAd.show();
        }
    }

    @Override
    public void onRewardedVideoAdLeftApplication() {
        Toast.makeText(this, "onRewardedVideoAdLeftApplication", Toast.LENGTH_SHORT).show();
    }

    @Override
    public void onRewardedVideoAdClosed() {
        Toast.makeText(this, "onRewardedVideoAdClosed", Toast.LENGTH_SHORT).show();
        // Preload the next video ad.
        loadRewardedVideoAd();
    }

    @Override
    public void onRewardedVideoAdFailedToLoad(int errorCode) {
        Toast.makeText(this, "onRewardedVideoAdFailedToLoad", Toast.LENGTH_SHORT).show();
    }

    @Override
    public void onRewardedVideoAdLoaded() {
        Toast.makeText(this, "onRewardedVideoAdLoaded", Toast.LENGTH_SHORT).show();
    }

    @Override
    public void onRewardedVideoAdOpened() {
        Toast.makeText(this, "onRewardedVideoAdOpened", Toast.LENGTH_SHORT).show();
    }

    @Override
    public void onRewarded(RewardItem reward) {
        Toast.makeText(this,
                String.format(" onRewarded! currency: %s amount: %d", reward.getType(),
                        reward.getAmount()),
                Toast.LENGTH_SHORT).show();
        addCoins(reward.getAmount());
    }

    @Override
    public void onRewardedVideoStarted() {
        Toast.makeText(this, "onRewardedVideoStarted", Toast.LENGTH_SHORT).show();
    }

}
I've just put 'x' where my add/app id for this but in my app I use my real app/unit id.
It's very sloppy code at the moment. I'm just really trying to get rewarded videos through admob into my game.

Found this...
https://stackoverflow.com/questions/22895140/call-android-methods-from-javascript

So it seems possible.
Anyone know how to accomplish this?
 
Last edited:

Xilefian

Adventurer
Xy$
0.00
Yes it is possible, I do this in my Android Tutorial's code for detecting WebGL/WebAudio capabilities before loading the RPG Maker MV project. My code is downloadable in the tutorial; rpgmakermv.co/threads/android-rpg-maker-mv-guide

Now, about doing this in Cordova. Your MainActivity is inheriting the CordovaActivity class, so you have protected access to the member appView here. appView publicly implements the CordovaWebView class which gives you access to the CordovaWebViewEngine class via the getEngine method, this class is what gives you access to the View used by Cordova (see the getView method here), which hopefully is a WebView.

(Extra bit: the CordovaWebViewEngine also gives you a method for calling JavaScript from Java with the familiar evaluateJavascript method).

So knowing all this, what you can do in your MainActivity's onCreate method is:
Java:
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    ... // onCreate code before loadUrl

    View engineView = this.appView.getEngine().getView();
    if (engineView instanceof WebView) {
        // Let's add a JavaScript interface to MainActivity
        ((WebView) engineView).addJavascriptInterface(this, "MainActivity"); // You can call "MainActivity" whatever you want
    } else {
        // ERROR: Cordova isn't using WebView! We're in trouble here!!
    }
 
    ... // Now we can loadUrl
    loadUrl(launchUrl);
}
Now you need to create your JavaScript methods for MainActivity:
Java:
@JavascriptInterface
public void showToast(String toast) {
    Toast.makeText(this, toast, Toast.LENGTH_SHORT).show();
}
The annotation @JavascriptInterface marks this method as available from inside JavaScript. You can read more about this here: developer.android.com/reference/android/webkit/WebView.html#addJavascriptInterface

So now, from anywhere within JavaScript, you should be able to call:
JavaScript:
MainActivity.showToast( "Hello, world!" );
And that will run the showToast method. Notice how your MainActivity has become a singleton in JavaScript, you can't instantiate Java classes inside JavaScript (easily) or manage JavaScript objects (easily) from inside Java.
 
Last edited:

CT_Bolt

Global Moderator
Staff member
Resource Team
Xy$
0.02
Oh wow, thanks for all the nice information! (cool)

However I must still be missing something, my app builds perfectly fine but now when it loads it just crashes.

Here is my MainActivity.java:

This is the warning on line 19
This is what happens:

Removing lines 16 through 22 lets the game run as normal...
I probably did something wrong. Any sugestions?
 
Last edited:

Xilefian

Adventurer
Xy$
0.00
Well, perhaps it's crashing because for some reason you deleted all your code before loadUrl...

You forgot all these lines in your onCreate method:
Java:
MobileAds.initialize(this, APP_ID);

mRewardedVideoAd = MobileAds.getRewardedVideoAdInstance(this);
mRewardedVideoAd.setRewardedVideoAdListener(this);
loadRewardedVideoAd();

That warning is not causing the crash, it's telling you about the security issues that introducing Javascript into your Java app causes: basically on Android devices below API 17 users can hack up your app and forces changes to your MainActivity's variables, which can cause your app to send fake data or expose server passwords and sensitive keys.

It's best to NOT use your MainActivity as the Javascript interface and make a custom class that does not have any sensitive data stored in it.


If you want to see crash logs in Android Studio you need to open up the LogCat and select your app to monitoring, then when the crash happens it will tell you exactly where it happened.
 

CT_Bolt

Global Moderator
Staff member
Resource Team
Xy$
0.02
Well, perhaps it's crashing because for some reason you deleted all your code before loadUrl...

You forgot all these lines in your onCreate method:
Java:
MobileAds.initialize(this, APP_ID);

mRewardedVideoAd = MobileAds.getRewardedVideoAdInstance(this);
mRewardedVideoAd.setRewardedVideoAdListener(this);
loadRewardedVideoAd();
Oh sorry I forgot to mention I've removed all code for rewardVideos for now to test the JavaScript Interface.
The game works smooth if I remove lines 16 through 22... but those are the lines I really need.

So it seems it has something to do with those lines... but really just possibly conflicting with something else... still unsure...

That warning is not causing the crash, it's telling you about the security issues that introducing Javascript into your Java app causes: basically on Android devices below API 17 users can hack up your app and forces changes to your MainActivity's variables, which can cause your app to send fake data or expose server passwords and sensitive keys.
Ok that is what I gathered from that, thanks for confirming. (cool)

It's best to NOT use your MainActivity as the Javascript interface and make a custom class that does not have any sensitive data stored in it.
Like this example from here?
JavaScript:
public class MainActivity extends Activity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        WebView webView = (WebView)findViewById(R.id.web_view);
        webView.loadUrl("file:///android_asset/web.html");

        webView.getSettings().setJavaScriptEnabled(true);
        webView.addJavascriptInterface(new WebViewJavaScriptInterface(this), "app");
    }

    /*
     * JavaScript Interface. Web code can access methods in here
     * (as long as they have the @JavascriptInterface annotation)
     */
    public class WebViewJavaScriptInterface{

        private Context context;

        /*
         * Need a reference to the context in order to sent a post message
         */
        public WebViewJavaScriptInterface(Context context){
            this.context = context;
        }

        /*
         * This method can be called from Android. @JavascriptInterface
         * required after SDK version 17.
         */
        @JavascriptInterface
        public void makeToast(String message, boolean lengthLong){
            Toast.makeText(context, message, (lengthLong ? Toast.LENGTH_LONG : Toast.LENGTH_SHORT)).show();
        }
    }

}

If you want to see crash logs in Android Studio you need to open up the LogCat and select your app to monitoring, then when the crash happens it will tell you exactly where it happened.
Thanks for the info. (cool)(thumbsup)
 
Last edited:

Xilefian

Adventurer
Xy$
0.00
Well, to fix your crash you need to actually tell us what's crashing when lines 16 through 22 are there. Use LogCat in Android Studio, copy the red crash log for the app when it crashes in debug, and then paste it here and I'll be able to give you an immediate answer to the problem.

Doing that would make helping you a billion, billion times easier.

I suspect the crash is related to getting the view from the engine - but again - give us your LogCat for the crash so we can actually see what's happening.
 

CT_Bolt

Global Moderator
Staff member
Resource Team
Xy$
0.02
Well, to fix your crash you need to actually tell us what's crashing when lines 16 through 22 are there. Use LogCat in Android Studio, copy the red crash log for the app when it crashes in debug, and then paste it here and I'll be able to give you an immediate answer to the problem.

Doing that would make helping you a billion, billion times easier.

I suspect the crash is related to getting the view from the engine - but again - give us your LogCat for the crash so we can actually see what's happening.
Here is my error log:
--------- beginning of crash
07-29 17:12:52.479 24857-24857/? E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.ctbolt.tap, PID: 24857
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.ctbolt.tap/com.ctbolt.tap.MainActivity}: java.lang.NullPointerException: Attempt to invoke interface method 'org.apache.cordova.CordovaWebViewEngine org.apache.cordova.CordovaWebView.getEngine()' on a null object reference
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2927)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2988)
at android.app.ActivityThread.-wrap14(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1631)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6682)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1520)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1410)
Caused by: java.lang.NullPointerException: Attempt to invoke interface method 'org.apache.cordova.CordovaWebViewEngine org.apache.cordova.CordovaWebView.getEngine()' on a null object reference
at com.ctbolt.tap.MainActivity.onCreate(MainActivity.java:16)
at android.app.Activity.performCreate(Activity.java:6942)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1126)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2880)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2988)
at android.app.ActivityThread.-wrap14(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1631)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6682)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1520)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1410)
You're the best. Thanks again for helping me. (cute) I'm not very familiar with android development yet.
 
Last edited:

Xilefian

Adventurer
Xy$
0.00
Cordova is a little weird. I've never used it before so I'm stabbing in the dark here and using what I can find on Google.

Try putting this after the super.onCreate line:
Java:
super.init();
Cordova apparently needs its init to be called manually, this doesn't sound right to me as this was working for you earlier before you tried to add in the Javascript calls (I presume?) so I doubt this will work, but whatever.

Basically, for some reason Cordova hasn't initialised the appView, I guess its onCreate doesn't do it when it should do, maybe it does it later on in the code which is why it worked for you before, but the code I wrote for you is trying to use it earlier on. Cordova is pretty bad if that's the case.
 

CT_Bolt

Global Moderator
Staff member
Resource Team
Xy$
0.02
Cordova is a little weird. I've never used it before so I'm stabbing in the dark here and using what I can find on Google.

Try putting this after the super.onCreate line:
Java:
super.init();
Cordova apparently needs its init to be called manually, this doesn't sound right to me as this was working for you earlier before you tried to add in the Javascript calls (I presume?) so I doubt this will work, but whatever.

Basically, for some reason Cordova hasn't initialised the appView, I guess its onCreate doesn't do it when it should do, maybe it does it later on in the code which is why it worked for you before, but the code I wrote for you is trying to use it earlier on. Cordova is pretty bad if that's the case.
Wow I did the same thing right before reading this post.
I also googled it and found that super.init() need to be called.

It actually does work & loads now... but when attempting to call "MainActivity.showToast(txt);"

I now get this error:
Reference Error
MainActivity is not defined

This is my whole MainActivity.java:


Here is my logCat but since the error generates through RMMV the app still runs but it is "paused" on the error message... so probably won't do much good.
logCat:
07-29 19:18:59.471 29039-29039/com.ctbolt.tap E/chromium: [ERROR:xwalk_autofill_client.cc(116)] Not implemented reached in virtual void xwalk::XWalkAutofillClient::OnFirstUserGestureObserved()
07-29 19:18:59.482 29039-29039/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "8.841", source: file:///android_asset/www/js/util.js (16)
07-29 19:18:59.482 29039-29039/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "8.842", source: file:///android_asset/www/js/util.js (16)
07-29 19:18:59.484 29039-29039/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "8.843", source: file:///android_asset/www/js/util.js (16)
07-29 19:18:59.485 29039-29039/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "8.845", source: file:///android_asset/www/js/util.js (16)
07-29 19:18:59.486 29039-29039/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "8.845", source: file:///android_asset/www/js/util.js (16)
07-29 19:18:59.486 29039-29039/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "8.846", source: file:///android_asset/www/js/util.js (16)
07-29 19:18:59.487 29039-29039/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "8.846", source: file:///android_asset/www/js/util.js (16)
07-29 19:18:59.500 29039-29039/com.ctbolt.tap I/chromium: [INFO:CONSOLE(1783)] "ReferenceError: MainActivity is not defined
at showToast (file:///android_asset/www/js/plugins/tappingGame.js:1934:3)
at eval (eval at <anonymous> (file:///android_asset/www/js/rpg_objects.js:10457:10), <anonymous>:1:1)
at Game_Interpreter.command355 (file:///android_asset/www/js/rpg_objects.js:10457:5)
at Game_Interpreter.executeCommand (file:///android_asset/www/js/rpg_objects.js:8915:34)
at Game_Interpreter.update (file:///android_asset/www/js/rpg_objects.js:8823:19)
at Game_Map.updateInterpreter (file:///android_asset/www/js/rpg_objects.js:6094:27)
at Game_Map.update (file:///android_asset/www/js/rpg_objects.js:6001:14)
at Scene_Map.updateMain (file:///android_asset/www/js/rpg_scenes.js:420:14)
at Scene_Map.updateMainMultiply (file:///android_asset/www/js/rpg_scenes.js:412:10)
at Scene_Map.update (file:///android_asset/www/js/rpg_scenes.js:401:10)
at Function.SceneManager.updateScene (file:///android_asset/www/js/rpg_managers.js:1856:25)", source: file:///android_asset/www/js/rpg_managers.js (1783)

I feel like I'm so close now... but just don't know what to do...
[doublepost=1501372007,1501370820][/doublepost]I found this that seems like it could help solve this... but unfortunately it's still over my skill level.

http://biud436.tistory.com/20

Perhaps you could understand better what is going on?
 
Last edited:

Xilefian

Adventurer
Xy$
0.00
Now that's really bizarre. This suggests the line "((WebView) engineView).addJavascriptInterface(this, "MainActivity");" is not getting reached. What you've got there is a Javascript error, rather than a Java error.

You can test this by adding logs:
Java:
View engineView = this.appView.getEngine().getView();
if (engineView instanceof WebView) {
    // Let's add a JavaScript interface to MainActivity
    ((WebView) engineView).addJavascriptInterface(this, "MainActivity"); // You can call "MainActivity" whatever you want
    Log.i("MainActivity", "SUCCESS: Added Javascript Interface!");
} else {
    // ERROR: Cordova isn't using WebView! We're in trouble here!!
    Log.e("MainActivity", "ERROR: Cordova really sucks. Amazing...");
}
If LogCat tells you Cordova sucks, then wow that's pretty amazing. Means Cordova is further deferring when the WebView is created (beyond super.init), which is nuts (should be one of the first things it does! Why the hell is it making the appView if it's not attaching the thing that powers Cordova???).

If LogCat tells you the Javascript Interface has been added, then we've got a real mystery on our hands, gang. "MainActivity" is bound as the Javascript interface to the WebView, yet the "MainActivity" accessor is mysteriously not available.


A brief Google shows that Cordova 6 does not support Javascript Interfaces at all (due to the security issues that I mentioned before), you're forced to write a Cordova Plugin; if this is the case, then jeez that really sucks for you. You'll have to learn how to create a Cordova Plugin that does everything you need, I am too unfamiliar with Cordova so I can't help beyond what I know about regular Android.


The troubles with kits like XDK, Crosswalk, PhoneGap and Cordova are exactly why I wrote my Android tutorial that doesn't use any of these weird kits and just goes ahead and makes you a clean, vanilla, light-weight, stock-Android no-nonsense runtime that you can do anything you want to.
 

CT_Bolt

Global Moderator
Staff member
Resource Team
Xy$
0.02
Yup looks like cordova sucks. lol (dead)
logCat:
07-29 20:18:50.106 3649-3649/? E/Zygote: v2
07-29 20:18:50.106 3649-3649/? I/libpersona: KNOX_SDCARD checking this for 10353
07-29 20:18:50.106 3649-3649/? I/libpersona: KNOX_SDCARD not a persona
07-29 20:18:50.108 3649-3649/? E/Zygote: accessInfo : 0
07-29 20:18:50.109 3649-3649/? W/SELinux: SELinux selinux_android_compute_policy_index : Policy Index[2], Con:u:r:zygote:s0 RAM:SEPF_SECMOBILE_7.0_0005, [-1 -1 -4 -1 0 1]
07-29 20:18:50.114 3649-3649/? I/SELinux: SELinux: seapp_context_lookup: seinfo=untrusted, level=s0:c512,c768, pkgname=com.ctbolt.tap
07-29 20:18:50.116 3649-3649/? I/art: Late-enabling -Xcheck:jni
07-29 20:18:50.135 3649-3649/? D/TimaKeyStoreProvider: TimaKeyStore is not enabled: cannot add TimaSignature Service and generateKeyPair Service
07-29 20:18:50.157 3649-3649/? W/ActivityThread: Application com.ctbolt.tap can be debugged on port 8100...
07-29 20:18:50.203 3649-3649/com.ctbolt.tap D/XWalkLib: Pre init xwalk core in com.ctbolt.tap.MainActivity
07-29 20:18:50.206 3649-3649/com.ctbolt.tap D/XWalkLib: Reserve class class org.xwalk.core.XWalkPreferences to com.ctbolt.tap.MainActivity
07-29 20:18:50.206 3649-3649/com.ctbolt.tap D/XWalkLib: Reserve method setValue to com.ctbolt.tap.MainActivity
07-29 20:18:50.206 3649-3649/com.ctbolt.tap D/XWalkLib: Reserve class class org.xwalk.core.XWalkPreferences to com.ctbolt.tap.MainActivity
07-29 20:18:50.206 3649-3649/com.ctbolt.tap D/XWalkLib: Reserve method setValue to com.ctbolt.tap.MainActivity
07-29 20:18:50.206 3649-3649/com.ctbolt.tap D/XWalkLib: Reserve class class org.xwalk.core.XWalkPreferences to com.ctbolt.tap.MainActivity
07-29 20:18:50.206 3649-3649/com.ctbolt.tap D/XWalkLib: Reserve method setValue to com.ctbolt.tap.MainActivity
07-29 20:18:50.206 3649-3649/com.ctbolt.tap D/XWalkLib: Reserve class class org.xwalk.core.XWalkPreferences to com.ctbolt.tap.MainActivity
07-29 20:18:50.206 3649-3649/com.ctbolt.tap D/XWalkLib: Reserve method setValue to com.ctbolt.tap.MainActivity
07-29 20:18:50.210 3649-3649/com.ctbolt.tap D/XWalkLib: Reserve object class org.crosswalk.engine.XWalkCordovaView to com.ctbolt.tap.MainActivity
07-29 20:18:50.222 3649-3649/com.ctbolt.tap D/XWalkLib: Reserve object class org.crosswalk.engine.XWalkCordovaResourceClient to com.ctbolt.tap.MainActivity
07-29 20:18:50.222 3649-3649/com.ctbolt.tap D/XWalkLib: Reserve method setResourceClient to com.ctbolt.tap.MainActivity
07-29 20:18:50.223 3649-3649/com.ctbolt.tap D/XWalkLib: Reserve object class org.crosswalk.engine.XWalkCordovaUiClient to com.ctbolt.tap.MainActivity
07-29 20:18:50.223 3649-3649/com.ctbolt.tap D/XWalkLib: Reserve method setUIClient to com.ctbolt.tap.MainActivity
07-29 20:18:50.230 3649-3649/com.ctbolt.tap W/AdMob: isGooglePlayServicesAvailable: true
07-29 20:18:50.230 3649-3649/com.ctbolt.tap D/XWalkLib: Reserve method setXWalkViewInternalVisibility to com.ctbolt.tap.MainActivity
07-29 20:18:50.230 3649-3649/com.ctbolt.tap D/XWalkLib: Reserve method setSurfaceViewVisibility to com.ctbolt.tap.MainActivity
07-29 20:18:50.282 3649-3649/com.ctbolt.tap D/ViewRootImpl@3008e8[MainActivity]: ThreadedRenderer.create() translucent=true
07-29 20:18:50.288 3649-3649/com.ctbolt.tap D/InputTransport: Input channel constructed: fd=59
07-29 20:18:50.288 3649-3649/com.ctbolt.tap D/ViewRootImpl@3008e8[MainActivity]: setView = DecorView@29aab01[MainActivity] touchMode=true
07-29 20:18:50.289 3649-3649/com.ctbolt.tap V/StatusBar: StatusBar: initialization
07-29 20:18:50.292 3649-3649/com.ctbolt.tap E/MainActivity: ERROR: Cordova really sucks. Amazing...
07-29 20:18:50.297 3649-3649/com.ctbolt.tap D/XWalkActivity: Initialize by XWalkActivity
07-29 20:18:50.298 3649-3649/com.ctbolt.tap D/XWalkLib: DecompressTask started
07-29 20:18:50.298 3649-3649/com.ctbolt.tap W/ResourceType: No package identifier when getting value for resource number 0x00000000
07-29 20:18:50.302 3649-3649/com.ctbolt.tap D/ViewRootImpl@d85f63d[MainActivity]: ThreadedRenderer.create() translucent=false
07-29 20:18:50.304 3649-3649/com.ctbolt.tap D/InputTransport: Input channel constructed: fd=60
07-29 20:18:50.304 3649-3649/com.ctbolt.tap D/ViewRootImpl@d85f63d[MainActivity]: setView = DecorView@33e9e32[MainActivity] touchMode=true
07-29 20:18:50.321 3649-3649/com.ctbolt.tap D/ViewRootImpl@3008e8[MainActivity]: dispatchAttachedToWindow
07-29 20:18:50.329 3649-3649/com.ctbolt.tap D/ViewRootImpl@3008e8[MainActivity]: Relayout returned: oldFrame=[0,0][0,0] newFrame=[0,0][1080,1920] result=0x7 surface={isValid=true -473278464} surfaceGenerationChanged=true
07-29 20:18:50.329 3649-3649/com.ctbolt.tap D/ViewRootImpl@3008e8[MainActivity]: mHardwareRenderer.initialize() mSurface={isValid=true -473278464} hwInitialized=true
07-29 20:18:50.336 3649-3649/com.ctbolt.tap D/ViewRootImpl@d85f63d[MainActivity]: dispatchAttachedToWindow

Well I thought cordova would save some hassle but it looks like it just causes more problems.
I'm going to follow your tutorial now. If you figure out how to make it work with cordova please let me know.
I'll post my results of following the tutorial here. *fingers crossed that all goes well*

Thanks again for everything! You are such an amazing help to me. (cool)(icecream)

PS. LOL at the scooby doo reference above. (jolly)
[doublepost=1501431451,1501374272][/doublepost]Status update:
I've followed the tutorial & now I am able to invoke java methods from my javascript plugin. (glad)
Verified with a Toast (hella)(thumbsup)

However I've lost all my ads (facepalm)... most likely due to the old version using cordova ad mob plugin which is no longer used.

I used to be able to display the top banner & regular interstitial ads but not rewarded ads via plugin script calls.

So now I am attempting to at least get the rewarded video to work with the new version.

I feel like I am close to the goal but now I get this error:

Error: Java exception was raised during method invocation

I'm pretty sure it's because of this (taken from logCat):
W/System.err: java.lang.IllegalStateException: isLoaded must be called on the main UI thread.


I'm just not sure how to fix it. (dead)

Yup it sure was. Solved with this: click here to view
Solved! See below. (cool)

JavaScript:
package systems.altimit.rpgmakermv;

import android.app.Activity;
import android.content.Context;
import android.content.DialogInterface;
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
import android.support.v7.app.AlertDialog;
import android.util.Log;
import android.view.View;
import android.webkit.JavascriptInterface;
import android.webkit.WebView;
import android.widget.Toast;

import com.google.android.gms.ads.AdRequest;
import com.google.android.gms.ads.MobileAds;
import com.google.android.gms.ads.reward.RewardItem;
import com.google.android.gms.ads.reward.RewardedVideoAd;
import com.google.android.gms.ads.reward.RewardedVideoAdListener;

import java.io.File;

/**
* Created by Xilefian on 28/04/2017.
*/
public class WebPlayerActivity extends Activity implements RewardedVideoAdListener {

    private Player mPlayer;
    private AlertDialog mQuitDialog;
    private int mSystemUiVisibility;

                                        // I've replaced my real ID with 'x' in order to show you the code
    private static final String AD_UNIT_ID = "ca-app-pub-xxxxxxxxxxxxxxxx/xxxxxxxxx";
    private static final String APP_ID = "ca-app-pub-xxxxxxxxxxxxxxxx/xxxxxxxxx";

    public RewardedVideoAd mRewardedVideoAd;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        createQuitDialog();

        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH) {
            mSystemUiVisibility = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION;
        }

        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) {
            mSystemUiVisibility |= View.SYSTEM_UI_FLAG_FULLSCREEN;
            mSystemUiVisibility |= View.SYSTEM_UI_FLAG_LAYOUT_STABLE;
            mSystemUiVisibility |= View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION;
            mSystemUiVisibility |= View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN;
        }

        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
            mSystemUiVisibility |= View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY;
        }

        mPlayer = PlayerHelper.create(this);
        mPlayer.setKeepScreenOn();
        setContentView(mPlayer.getView());

        mPlayer.addJavascriptInterface(this, "MainActivity"); // You can call "MainActivity" whatever you want

        MobileAds.initialize(this, APP_ID);

        mRewardedVideoAd = MobileAds.getRewardedVideoAdInstance(this);
        mRewardedVideoAd.setRewardedVideoAdListener(this);
        loadRewardedVideoAd();


        if (!addBootstrapInterface(mPlayer)) {
            Uri.Builder projectURIBuilder = Uri.fromFile(new File(getString(R.string.mv_project_index))).buildUpon();
            projectURIBuilder.query(getString(R.string.query_noaudio));
            mPlayer.loadUrl(projectURIBuilder.build().toString());
        }
    }

    @JavascriptInterface
    public void showToast(String toast){
        Toast.makeText(this, toast, Toast.LENGTH_SHORT).show();
    }

    @JavascriptInterface
    public void showRewarded() {
        showRewardedVideo();
    }

    private void loadRewardedVideoAd() {
        if (!mRewardedVideoAd.isLoaded()) {
            mRewardedVideoAd.loadAd(AD_UNIT_ID, new AdRequest.Builder().build());
        }
    }

    private void addCoins(int coins) {
        //mCoinCount = mCoinCount + coins;
        //mCoinCountText.setText("Coins: " + mCoinCount);
    }

    public void showRewardedVideo() {
        Toast.makeText(this, "show ad", Toast.LENGTH_SHORT).show();
        if (mRewardedVideoAd.isLoaded()) {
            mRewardedVideoAd.show();
        }
    }

    @Override
    public void onRewardedVideoAdLeftApplication() {
        Toast.makeText(this, "onRewardedVideoAdLeftApplication", Toast.LENGTH_SHORT).show();
    }

    @Override
    public void onRewardedVideoAdClosed() {
        Toast.makeText(this, "onRewardedVideoAdClosed", Toast.LENGTH_SHORT).show();
        // Preload the next video ad.
        loadRewardedVideoAd();
    }

    @Override
    public void onRewardedVideoAdFailedToLoad(int errorCode) {
        Toast.makeText(this, "onRewardedVideoAdFailedToLoad", Toast.LENGTH_SHORT).show();
    }

    @Override
    public void onRewardedVideoAdLoaded() {
        Toast.makeText(this, "onRewardedVideoAdLoaded", Toast.LENGTH_SHORT).show();
    }

    @Override
    public void onRewardedVideoAdOpened() {
        Toast.makeText(this, "onRewardedVideoAdOpened", Toast.LENGTH_SHORT).show();
    }

    @Override
    public void onRewarded(RewardItem reward) {
        Toast.makeText(this,
                String.format(" onRewarded! currency: %s amount: %d", reward.getType(),
                        reward.getAmount()),
                Toast.LENGTH_SHORT).show();
        addCoins(reward.getAmount());
    }

    @Override
    public void onRewardedVideoStarted() {
        //Toast.makeText(this, "onRewardedVideoStarted", Toast.LENGTH_SHORT).show();
    }

    @Override
    public void onBackPressed() {
        if (!mQuitDialog.isShowing()) {
            mQuitDialog.show();
        }
    }

    @Override
    protected void onPause() {
        super.onPause();
        if (mPlayer != null) {
            mPlayer.pauseTimers();
            mPlayer.onHide();
        }
    }

    @Override
    protected void onResume() {
        super.onResume();
        getWindow().getDecorView().setSystemUiVisibility(mSystemUiVisibility);
        if (mPlayer != null) {
            mPlayer.resumeTimers();
            mPlayer.onShow();
        }
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        if (mPlayer != null) {
            mPlayer.onDestroy();
        }
    }

    private void createQuitDialog() {
        String appName = getString(R.string.app_name);
        String[] quitLines = getResources().getStringArray(R.array.quit_message);
        StringBuilder quitMessage = new StringBuilder();
        for (int ii = 0; ii < quitLines.length; ii++) {
            quitMessage.append(quitLines[ii].replace("$1", appName));
            if (ii < quitLines.length - 1) {
                quitMessage.append("\n");
            }
        }

        mQuitDialog = new AlertDialog.Builder(this)
                .setPositiveButton("Cancel", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        dialog.dismiss();
                    }
                })
                .setOnDismissListener(new DialogInterface.OnDismissListener() {
                    @Override
                    public void onDismiss(DialogInterface dialog) {
                        getWindow().getDecorView().setSystemUiVisibility(mSystemUiVisibility);
                    }
                })
                .setNegativeButton("Quit", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        WebPlayerActivity.super.onBackPressed();
                    }
                })
                .setMessage(quitMessage.toString())
                .create();
    }

    private boolean addBootstrapInterface(Player webView) {
        if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.JELLY_BEAN_MR1) {
            new Bootstrapper(webView);
            return true;
        }
        return false;
    }

    /**
     *
     */
    private static final class Bootstrapper extends PlayerHelper.Interface implements Runnable {

        private static Uri.Builder appendQuery(Uri.Builder builder, String query) {
            Uri current = builder.build();

            String oldQuery = current.getEncodedQuery();
            if (oldQuery != null && oldQuery.length() > 0) {
                query = oldQuery + "&" + query;
            }

            builder.encodedQuery(query);
            return builder;
        }

        private static final String INTERFACE = "boot";
        private static final String PREPARE_FUNC = "prepare( webgl(), webaudio(), false )";

        private Player mPlayer;
        private Uri.Builder mURIBuilder;

        private Bootstrapper(Player player) {
            Context context = player.getContext();
            player.addJavascriptInterface(this, Bootstrapper.INTERFACE);

            mPlayer = player;
            mURIBuilder = Uri.fromFile(new File(context.getString(R.string.mv_project_index))).buildUpon();
            mPlayer.loadData(context.getString(R.string.webview_default_page));
        }

        @Override
        protected void onStart() {
            Context context = mPlayer.getContext();
            final String code = context.getString(R.string.webview_detection_source) + INTERFACE + "." + PREPARE_FUNC + ";";
            mPlayer.post(new Runnable() {
                @Override
                public void run() {
                    mPlayer.evaluateJavascript(code);
                }
            });
        }

        @Override
        protected void onPrepare(boolean webgl, boolean webaudio, boolean showfps) {
            Context context = mPlayer.getContext();

            if (webgl) {
                mURIBuilder = appendQuery(mURIBuilder, context.getString(R.string.query_webgl));
            }
            if (!webaudio) {
                mURIBuilder = appendQuery(mURIBuilder, context.getString(R.string.query_noaudio));
            }
            if (showfps) {
                mURIBuilder = appendQuery(mURIBuilder, context.getString(R.string.query_showfps));
            }

            mPlayer.post(this);
        }

        @Override
        public void run() {
            mPlayer.removeJavascriptInterface(INTERFACE);
            mPlayer.loadUrl(mURIBuilder.build().toString());
        }

    }

}

Full logCat:
07-30 12:26:12.647 8581-8581/? E/Zygote: v2
07-30 12:26:12.647 8581-8581/? I/libpersona: KNOX_SDCARD checking this for 10353
07-30 12:26:12.647 8581-8581/? I/libpersona: KNOX_SDCARD not a persona
07-30 12:26:12.647 8581-8581/? E/Zygote: accessInfo : 0
07-30 12:26:12.648 8581-8581/? W/SELinux: SELinux selinux_android_compute_policy_index : Policy Index[2], Con:u:r:zygote:s0 RAM:SEPF_SECMOBILE_7.0_0005, [-1 -1 -4 -1 0 1]
07-30 12:26:12.649 8581-8581/? I/SELinux: SELinux: seapp_context_lookup: seinfo=untrusted, level=s0:c512,c768, pkgname=com.ctbolt.tap
07-30 12:26:12.652 8581-8581/? I/art: Late-enabling -Xcheck:jni
07-30 12:26:12.679 8581-8581/com.ctbolt.tap D/TimaKeyStoreProvider: TimaKeyStore is not enabled: cannot add TimaSignature Service and generateKeyPair Service
07-30 12:26:12.696 8581-8581/com.ctbolt.tap W/ActivityThread: Application com.ctbolt.tap can be debugged on port 8100...
07-30 12:26:13.081 8581-8581/com.ctbolt.tap W/System: ClassLoader referenced unknown path: /data/app/com.ctbolt.tap-1/lib/arm64
07-30 12:26:13.139 8581-8614/com.ctbolt.tap W/DynamiteModule: Local module descriptor class for com.google.firebase.auth not found.
07-30 12:26:13.144 8581-8618/com.ctbolt.tap I/DynamiteModule: Considering local module com.google.android.gms.flags:2 and remote module com.google.android.gms.flags:0
07-30 12:26:13.144 8581-8618/com.ctbolt.tap I/DynamiteModule: Selected local version of com.google.android.gms.flags
07-30 12:26:13.145 8581-8618/com.ctbolt.tap W/System: ClassLoader referenced unknown path:
07-30 12:26:13.146 8581-8614/com.ctbolt.tap W/DynamiteModule: Local module descriptor class for com.google.firebase.auth not found.
07-30 12:26:13.157 8581-8618/com.ctbolt.tap W/DynamiteModule: Local module descriptor class for com.google.android.gms.crash not found.
07-30 12:26:13.159 8581-8618/com.ctbolt.tap I/DynamiteModule: Considering local module com.google.android.gms.crash:0 and remote module com.google.android.gms.crash:7
07-30 12:26:13.159 8581-8618/com.ctbolt.tap I/DynamiteModule: Selected remote version of com.google.android.gms.crash, version >= 7
07-30 12:26:13.165 8581-8581/com.ctbolt.tap I/FA: App measurement is starting up, version: 11020
07-30 12:26:13.165 8581-8581/com.ctbolt.tap I/FA: To enable debug logging run: adb shell setprop log.tag.FA VERBOSE
07-30 12:26:13.170 8581-8618/com.ctbolt.tap W/System: ClassLoader referenced unknown path: /data/user_de/0/com.google.android.gms/app_chimera/m/00000021/n/arm64-v8a
07-30 12:26:13.176 8581-8618/com.ctbolt.tap I/FirebaseCrashApiImpl: FirebaseCrashApiImpl created by ClassLoader t[DexPathList[[zip file "/data/user_de/0/com.google.android.gms/app_chimera/m/00000021/DynamiteModulesC_GmsCore_prodmnc_alldpi_release.apk"],nativeLibraryDirectories=[/data/user_de/0/com.google.android.gms/app_chimera/m/00000021/n/arm64-v8a, /system/lib64, /vendor/lib64]]]
07-30 12:26:13.176 8581-8618/com.ctbolt.tap I/FirebaseCrash: FirebaseCrash reporting loaded - com.google.android.gms.internal.ml@346cb09
07-30 12:26:13.182 8581-8581/com.ctbolt.tap V/FA: Collection enabled
07-30 12:26:13.182 8581-8581/com.ctbolt.tap V/FA: App package, google app id: com.ctbolt.tap, 1:387413708051:android:9f83345860a8770c
07-30 12:26:13.182 8581-8619/com.ctbolt.tap I/DynamiteModule: Considering local module com.google.android.gms.flags:2 and remote module com.google.android.gms.flags:0
07-30 12:26:13.183 8581-8619/com.ctbolt.tap I/DynamiteModule: Selected local version of com.google.android.gms.flags
07-30 12:26:13.183 8581-8581/com.ctbolt.tap I/FA: To enable faster debug mode event logging run:
adb shell setprop debug.firebase.analytics.app com.ctbolt.tap
07-30 12:26:13.183 8581-8581/com.ctbolt.tap D/FA: Debug-level message logging enabled
07-30 12:26:13.189 8581-8619/com.ctbolt.tap W/DynamiteModule: Local module descriptor class for com.google.android.gms.crash not found.
07-30 12:26:13.204 8581-8619/com.ctbolt.tap I/FirebaseCrashApiImpl: FirebaseCrash reporting API initialized
07-30 12:26:13.206 8581-8581/com.ctbolt.tap V/FA: Cancelling job. JobID: 1526632836
07-30 12:26:13.209 8581-8581/com.ctbolt.tap V/FA: Registered activity lifecycle callback
07-30 12:26:13.210 8581-8581/com.ctbolt.tap I/FirebaseInitProvider: FirebaseApp initialization successful
07-30 12:26:13.211 8581-8581/com.ctbolt.tap I/InstantRun: starting instant run server: is main process
07-30 12:26:13.211 8581-8619/com.ctbolt.tap I/FirebaseCrash: FirebaseCrash reporting initialized com.google.android.gms.internal.ml@346cb09
07-30 12:26:13.212 8581-8619/com.ctbolt.tap D/FirebaseCrash: Firebase Analytics Listener for Firebase Crash is initialized
07-30 12:26:13.215 8581-8623/com.ctbolt.tap V/FA: Using measurement service
07-30 12:26:13.216 8581-8623/com.ctbolt.tap V/FA: Connecting to remote service
07-30 12:26:13.219 8581-8623/com.ctbolt.tap V/FA: Using measurement service
07-30 12:26:13.219 8581-8623/com.ctbolt.tap V/FA: Connection attempt already in progress
07-30 12:26:13.227 8581-8581/com.ctbolt.tap V/FA: onActivityCreated
07-30 12:26:13.247 8581-8581/com.ctbolt.tap W/art: Before Android 4.1, method android.graphics.PorterDuffColorFilter android.support.graphics.drawable.VectorDrawableCompat.updateTintFilter(android.graphics.PorterDuffColorFilter, android.content.res.ColorStateList, android.graphics.PorterDuff$Mode) would have incorrectly overridden the package-private method in android.graphics.drawable.Drawable
07-30 12:26:13.283 8581-8581/com.ctbolt.tap I/WebViewFactory: Loading com.android.chrome version 59.0.3071.125 (code 307112552)
07-30 12:26:13.314 8581-8581/com.ctbolt.tap I/cr_LibraryLoader: Time to load native libraries: 3 ms (timestamps 8285-8288)
07-30 12:26:13.323 8581-8581/com.ctbolt.tap I/chromium: [INFO:library_loader_hooks.cc(144)] Chromium logging enabled: level = 0, default verbosity = 0
07-30 12:26:13.324 8581-8581/com.ctbolt.tap I/cr_LibraryLoader: Expected native library version number "59.0.3071.125", actual native library version number "59.0.3071.125"
07-30 12:26:13.335 8581-8581/com.ctbolt.tap I/cr_BrowserStartup: Initializing chromium process, singleProcess=true
07-30 12:26:13.359 8581-8581/com.ctbolt.tap D/libEGL: loaded /vendor/lib64/egl/libGLES_mali.so
07-30 12:26:13.415 8581-8648/com.ctbolt.tap W/cr_BindingManager: Cannot setInForeground() - never saw a connection for the pid: 8581
07-30 12:26:13.417 8581-8581/com.ctbolt.tap D/ConnectivityManager: requestNetwork; CallingUid : 10353, CallingPid : 8581
07-30 12:26:13.520 8581-8581/com.ctbolt.tap W/System: ClassLoader referenced unknown path: /data/user_de/0/com.google.android.gms/app_chimera/m/0000001f/n/arm64-v8a
07-30 12:26:13.523 8581-8581/com.ctbolt.tap D/DynamitePackage: Instantiated singleton DynamitePackage.
07-30 12:26:13.524 8581-8581/com.ctbolt.tap D/DynamitePackage: Instantiating com.google.android.gms.ads.ChimeraMobileAdsSettingManagerCreatorImpl
07-30 12:26:13.542 8581-8581/com.ctbolt.tap D/NetworkSecurityConfig: No Network Security Config specified, using platform default
07-30 12:26:13.571 8581-8581/com.ctbolt.tap D/DynamitePackage: Instantiating com.google.android.gms.ads.reward.ChimeraRewardedVideoAdCreatorImpl
07-30 12:26:13.589 8581-8581/com.ctbolt.tap I/Ads: Starting ad request.
07-30 12:26:13.601 8581-8581/com.ctbolt.tap I/Ads: Use AdRequest.Builder.addTestDevice("463512FB6123D1725E5094B533BEC44B") to get test ads on this device.
07-30 12:26:13.619 8581-8652/com.ctbolt.tap W/cr_media: Requires BLUETOOTH permission
07-30 12:26:13.626 8581-8623/com.ctbolt.tap W/DynamiteModule: Local module descriptor class for com.google.android.gms.tagmanager not found.
07-30 12:26:13.631 8581-8623/com.ctbolt.tap I/DynamiteModule: Considering local module com.google.android.gms.tagmanager:0 and remote module com.google.android.gms.tagmanager:12
07-30 12:26:13.631 8581-8623/com.ctbolt.tap I/DynamiteModule: Selected remote version of com.google.android.gms.tagmanager, version >= 12
07-30 12:26:13.638 8581-8581/com.ctbolt.tap D/ViewRootImpl@7050d18[WebPlayerActivity]: ThreadedRenderer.create() translucent=false
07-30 12:26:13.645 8581-8581/com.ctbolt.tap D/InputTransport: Input channel constructed: fd=129
07-30 12:26:13.646 8581-8581/com.ctbolt.tap D/ViewRootImpl@7050d18[WebPlayerActivity]: setView = DecorView@fb41371[WebPlayerActivity] touchMode=true
07-30 12:26:13.649 8581-8623/com.ctbolt.tap W/GoogleTagManager: Tag Manager fails to initialize (TagManagerService not enabled in the manifest)
07-30 12:26:13.650 8581-8623/com.ctbolt.tap D/FA: Logging event (FE): ad_query(_aq), Bundle[{firebase_event_origin(_o)=am, ad_event_id(_aeid)=-8504147451652416493}]
07-30 12:26:13.653 8581-8581/com.ctbolt.tap D/ConnectivityManager: requestNetwork; CallingUid : 10353, CallingPid : 8581
07-30 12:26:13.656 8581-8700/com.ctbolt.tap E/libEGL: validate_display:99 error 3008 (EGL_BAD_DISPLAY)
07-30 12:26:13.660 8581-8623/com.ctbolt.tap V/FA: Using measurement service
07-30 12:26:13.660 8581-8623/com.ctbolt.tap V/FA: Connection attempt already in progress
07-30 12:26:13.660 8581-8623/com.ctbolt.tap V/FA: Using measurement service
07-30 12:26:13.660 8581-8623/com.ctbolt.tap V/FA: Connection attempt already in progress
07-30 12:26:13.661 8581-8623/com.ctbolt.tap V/FA: Activity resumed, time: 179665309
07-30 12:26:13.663 8581-8623/com.ctbolt.tap D/FA: Logging event (FE): screen_view(_vs), Bundle[{firebase_event_origin(_o)=auto, firebase_screen_class(_sc)=WebPlayerActivity, firebase_screen_id(_si)=-8504147451652416492}]
07-30 12:26:13.671 8581-8623/com.ctbolt.tap V/FA: Using measurement service
07-30 12:26:13.672 8581-8623/com.ctbolt.tap V/FA: Connection attempt already in progress
07-30 12:26:13.672 8581-8700/com.ctbolt.tap W/AudioCapabilities: Unsupported mime audio/mpeg-L1
07-30 12:26:13.672 8581-8700/com.ctbolt.tap W/AudioCapabilities: Unsupported mime audio/mpeg-L2
07-30 12:26:13.674 8581-8581/com.ctbolt.tap D/ViewRootImpl@7050d18[WebPlayerActivity]: dispatchAttachedToWindow
07-30 12:26:13.675 8581-8700/com.ctbolt.tap W/AudioCapabilities: Unsupported mime audio/x-ms-wma
07-30 12:26:13.676 8581-8700/com.ctbolt.tap W/AudioCapabilities: Unsupported mime audio/x-ima
07-30 12:26:13.678 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile/level 1/32 for video/mp4v-es
07-30 12:26:13.678 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile/level 32768/2 for video/mp4v-es
07-30 12:26:13.678 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile/level 32768/64 for video/mp4v-es
07-30 12:26:13.685 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.685 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.685 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.685 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.685 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.685 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.685 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.685 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.685 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.685 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.685 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.685 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.685 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.685 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.685 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.685 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.685 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706434 for video/avc
07-30 12:26:13.687 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.687 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.687 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.687 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.687 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.687 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.687 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.687 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.687 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.687 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.687 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.687 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.687 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.687 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.687 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.687 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.687 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706434 for video/avc
07-30 12:26:13.693 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unsupported mime video/wvc1
07-30 12:26:13.694 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unsupported mime video/x-ms-wmv
07-30 12:26:13.698 8581-8581/com.ctbolt.tap D/ViewRootImpl@7050d18[WebPlayerActivity]: Relayout returned: oldFrame=[0,0][0,0] newFrame=[0,0][1080,1920] result=0x27 surface={isValid=true 528251820544} surfaceGenerationChanged=true
07-30 12:26:13.699 8581-8695/com.ctbolt.tap I/OpenGLRenderer: Initialized EGL, version 1.4
07-30 12:26:13.699 8581-8581/com.ctbolt.tap D/ViewRootImpl@7050d18[WebPlayerActivity]: mHardwareRenderer.initialize() mSurface={isValid=true 528251820544} hwInitialized=true
07-30 12:26:13.699 8581-8695/com.ctbolt.tap D/OpenGLRenderer: Swap behavior 1
07-30 12:26:13.703 8581-8695/com.ctbolt.tap D/mali_winsys: EGLint new_window_surface(egl_winsys_display*, void*, EGLSurface, EGLConfig, egl_winsys_surface**, egl_color_buffer_format*, EGLBoolean) returns 0x3000, [1080x1920]-format:1
07-30 12:26:13.704 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile/level 1/32 for video/mp4v-es
07-30 12:26:13.704 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile/level 32768/2 for video/mp4v-es
07-30 12:26:13.704 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile/level 32768/64 for video/mp4v-es
07-30 12:26:13.705 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unsupported mime video/wvc1
07-30 12:26:13.706 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unsupported mime video/x-ms-wmv
07-30 12:26:13.707 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unsupported mime video/x-ms-wmv7
07-30 12:26:13.708 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unsupported mime video/x-ms-wmv8
07-30 12:26:13.711 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unsupported mime video/mp43
07-30 12:26:13.717 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.717 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.717 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.717 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.718 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.719 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.719 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.719 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.719 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.719 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.719 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.719 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.719 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.719 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.719 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.719 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
07-30 12:26:13.719 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile 2130706434 for video/avc
07-30 12:26:13.725 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile/level 1/32 for video/mp4v-es
07-30 12:26:13.725 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile/level 32768/2 for video/mp4v-es
07-30 12:26:13.725 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unrecognized profile/level 32768/64 for video/mp4v-es
07-30 12:26:13.737 8581-8581/com.ctbolt.tap D/ViewRootImpl@7050d18[WebPlayerActivity]: MSG_RESIZED_REPORT: ci=Rect(0, 63 - 0, 0) vi=Rect(0, 0 - 0, 0) or=1
07-30 12:26:13.737 8581-8581/com.ctbolt.tap D/ViewRootImpl@7050d18[WebPlayerActivity]: MSG_WINDOW_FOCUS_CHANGED 1
07-30 12:26:13.737 8581-8581/com.ctbolt.tap D/ViewRootImpl@7050d18[WebPlayerActivity]: mHardwareRenderer.initializeIfNeeded()#2 mSurface={isValid=true 528251820544}
07-30 12:26:13.738 8581-8581/com.ctbolt.tap V/InputMethodManager: Starting input: tba=android.view.inputmethod.EditorInfo@6b85ccf nm : com.ctbolt.tap ic=null
07-30 12:26:13.738 8581-8581/com.ctbolt.tap I/InputMethodManager: [IMM] startInputInner - mService.startInputOrWindowGainedFocus
07-30 12:26:13.740 8581-8623/com.ctbolt.tap D/FA: Connected to remote service
07-30 12:26:13.741 8581-8623/com.ctbolt.tap V/FA: Processing queued up service tasks: 5
07-30 12:26:13.743 8581-8595/com.ctbolt.tap D/InputTransport: Input channel constructed: fd=145
07-30 12:26:13.744 8581-8581/com.ctbolt.tap V/InputMethodManager: Starting input: tba=android.view.inputmethod.EditorInfo@64cad65 nm : com.ctbolt.tap ic=null
07-30 12:26:13.745 8581-8700/com.ctbolt.tap I/VideoCapabilities: Unsupported profile 4 for video/mp4v-es
07-30 12:26:13.772 8581-8700/com.ctbolt.tap W/VideoCapabilities: Unsupported mime video/sorenson
07-30 12:26:13.774 8581-8700/com.ctbolt.tap W/AudioCapabilities: Unsupported mime audio/qcelp
07-30 12:26:13.775 8581-8700/com.ctbolt.tap W/AudioCapabilities: Unsupported mime audio/qcelp
07-30 12:26:13.775 8581-8700/com.ctbolt.tap W/AudioCapabilities: Unsupported mime audio/evrc
07-30 12:26:13.776 8581-8700/com.ctbolt.tap W/AudioCapabilities: Unsupported mime audio/evrc
07-30 12:26:13.817 8581-8581/com.ctbolt.tap W/cr_BindingManager: Cannot call determinedVisibility() - never saw a connection for the pid: 8581
07-30 12:26:13.838 8581-8683/com.ctbolt.tap W/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
07-30 12:26:13.838 8581-8683/com.ctbolt.tap W/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
07-30 12:26:13.838 8581-8683/com.ctbolt.tap W/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
07-30 12:26:13.906 8581-8652/com.ctbolt.tap I/libOpenSLES: Emulating old channel mask behavior (ignoring positional mask 0x3, using default mask 0x3 based on channel count of 2)
07-30 12:26:13.908 8581-8652/com.ctbolt.tap D/AudioTrack: Client defaulted notificationFrames to 240 for frameCount 480
07-30 12:26:13.924 8581-8581/com.ctbolt.tap W/cr_BindingManager: Cannot call determinedVisibility() - never saw a connection for the pid: 8581
07-30 12:26:14.456 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(24131)] "%cDeprecation Warning: %c%s", source: file:///android_asset/www/js/libs/pixi.js (24131)
07-30 12:26:14.456 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(24132)] " at file:///android_asset/www/js/plugins/OrangeLighting.js:115:53
at file:///android_asset/www/js/plugins/OrangeLighting.js:525:3", source: file:///android_asset/www/js/libs/pixi.js (24132)
07-30 12:26:14.456 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(24133)] "console.groupEnd", source: file:///android_asset/www/js/libs/pixi.js (24133)
07-30 12:26:14.495 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(964)] "No parameters could be found for 'MOG_PictureEffects' !!", source: file:///android_asset/www/js/plugins/MVCommons.js (964)
07-30 12:26:14.512 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(964)] "No parameters could be found for 'MOG_PixiFilters' !!", source: file:///android_asset/www/js/plugins/MVCommons.js (964)
07-30 12:26:14.541 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "0.179", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:14.614 8581-8581/com.ctbolt.tap W/Ads: Server parameters: {"gwhirl_share_location":"1","pubid":"ca-app-pub-8783436039630479\/6204166347\/cak=no_cache&cadc=vw&caqid=pgh-WfPzOI7NnAT1xDI"}
07-30 12:26:14.614 8581-8581/com.ctbolt.tap W/Ads: Server parameters: {"gwhirl_share_location":"1","pubid":"ca-app-pub-8783436039630479\/6204166347\/cak=no_cache&cadc=vw&caqid=pgh-WfPzOI7NnAT1xDI"}
07-30 12:26:14.623 8581-8581/com.ctbolt.tap D/DynamitePackage: Instantiating com.google.android.gms.ads.ChimeraAdManagerCreatorImpl
07-30 12:26:14.626 8581-8581/com.ctbolt.tap I/Ads: Starting ad request.
07-30 12:26:14.626 8581-8581/com.ctbolt.tap I/Ads: Use AdRequest.Builder.addTestDevice("463512FB6123D1725E5094B533BEC44B") to get test ads on this device.
07-30 12:26:14.813 8581-8765/com.ctbolt.tap D/skia: Encode PNG Singlethread : 3494 us, width=126, height=126
07-30 12:26:14.903 8581-8581/com.ctbolt.tap W/cr_BindingManager: Cannot call determinedVisibility() - never saw a connection for the pid: 8581
07-30 12:26:14.903 8581-8581/com.ctbolt.tap W/cr_BindingManager: Cannot call determinedVisibility() - never saw a connection for the pid: 8581
07-30 12:26:15.391 8581-8581/com.ctbolt.tap I/ExoPlayerImpl: Init 1.3.1
07-30 12:26:15.399 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "1.036", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:15.399 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "1.037", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:15.400 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "1.037", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:15.400 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "1.037", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:15.400 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "1.038", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:15.400 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "1.038", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:15.401 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "1.038", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:15.401 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "1.038", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:15.401 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "1.039", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:15.402 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "1.039", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:15.402 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "1.039", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:15.402 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "1.039", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:15.402 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "1.040", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:15.402 8581-8778/com.ctbolt.tap I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
07-30 12:26:15.402 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "1.040", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:15.402 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "1.040", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:15.402 8581-8778/com.ctbolt.tap I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
07-30 12:26:15.427 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(964)] "No parameters could be found for 'ShaderTilemap' !!", source: file:///android_asset/www/js/plugins/MVCommons.js (964)
07-30 12:26:15.448 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(24131)] "%cDeprecation Warning: %c%s", source: file:///android_asset/www/js/libs/pixi.js (24131)
07-30 12:26:15.448 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(24132)] " at OrangeLightmask.$.initialize (file:///android_asset/www/js/plugins/OrangeLighting.js:228:11)
at new OrangeLightmask (file:///android_asset/www/js/plugins/OrangeLighting.js:79:21)
at Spriteset_Map.$.createLightmask (file:///android_asset/www/js/plugins/OrangeLighting.js:424:25)
at Spriteset_Map.$.createWeather (file:///android_asset/www/js/plugins/OrangeLighting.js:431:12)
at Spriteset_Map.createLowerLayer (file:///android_asset/www/js/plugins/TDDP_BindPicturesToMap.js:114:14)
at Spriteset_Map.createLowerLayer (file:///android_asset/www/js/plugins/MOG_PixiFilters.js:203:44)
at Spriteset_Map.Spriteset_Base.initialize (file:///android_asset/www/js/rpg_sprites.js:2124:10)
at Spriteset_Map.Spriteset_Base.initialize (file:///android_asset/www/js/plugins/MOG_PixiFilters.js:259:43)", source: file:///android_asset/www/js/libs/pixi.js (24132)
07-30 12:26:15.448 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(24133)] "console.groupEnd", source: file:///android_asset/www/js/libs/pixi.js (24133)


[ 07-30 12:26:15.548 8581: 8700 I/ ]
Increase max job count 60
07-30 12:26:15.646 8581-8778/com.ctbolt.tap I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
07-30 12:26:15.646 8581-8778/com.ctbolt.tap I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
07-30 12:26:15.829 8581-8777/com.ctbolt.tap I/ACodec: [] Now uninitialized
07-30 12:26:15.830 8581-8796/com.ctbolt.tap I/ACodec: [] onAllocateComponent
07-30 12:26:15.831 8581-8796/com.ctbolt.tap I/OMXClient: MuxOMX ctor
07-30 12:26:15.834 8581-8796/com.ctbolt.tap I/ACodec: [OMX.google.aac.decoder] Now Loaded
07-30 12:26:15.836 8581-8796/com.ctbolt.tap I/ACodec: [OMX.google.aac.decoder] Now Loaded->Idle
07-30 12:26:15.838 8581-8796/com.ctbolt.tap I/ACodec: [OMX.google.aac.decoder] Now Idle->Executing
07-30 12:26:15.839 8581-8796/com.ctbolt.tap I/ACodec: [OMX.google.aac.decoder] Now Executing
07-30 12:26:15.934 8581-8796/com.ctbolt.tap I/ACodec: [OMX.google.aac.decoder] Now handling output port settings change
07-30 12:26:15.939 8581-8796/com.ctbolt.tap I/ACodec: [OMX.google.aac.decoder] Now Executing
07-30 12:26:15.948 8581-8777/com.ctbolt.tap D/AudioTrack: Client defaulted notificationFrames to 4725 for frameCount 14176
07-30 12:26:16.376 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "2.013", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:16.402 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "2.039", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:16.519 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "2.156", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:16.520 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "2.157", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:16.749 8581-8581/com.ctbolt.tap I/Ads: Ad finished loading.
07-30 12:26:16.750 8581-8581/com.ctbolt.tap I/Ads: Ad finished loading.
07-30 12:26:16.765 8581-8664/com.ctbolt.tap I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
07-30 12:26:16.766 8581-8664/com.ctbolt.tap I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
07-30 12:26:16.767 8581-8581/com.ctbolt.tap D/ViewRootImpl@e64f6ce[Toast]: ThreadedRenderer.create() translucent=true
07-30 12:26:16.771 8581-8581/com.ctbolt.tap D/InputTransport: Input channel constructed: fd=185
07-30 12:26:16.771 8581-8581/com.ctbolt.tap D/ViewRootImpl@e64f6ce[Toast]: setView = android.widget.LinearLayout{58409ef V.E...... ......I. 0,0-0,0} touchMode=true
07-30 12:26:16.772 8581-8581/com.ctbolt.tap D/ViewRootImpl@e64f6ce[Toast]: dispatchAttachedToWindow
07-30 12:26:16.787 8581-8581/com.ctbolt.tap D/ViewRootImpl@e64f6ce[Toast]: Relayout returned: oldFrame=[0,0][0,0] newFrame=[239,1636][840,1752] result=0x27 surface={isValid=true 526261696512} surfaceGenerationChanged=true
07-30 12:26:16.787 8581-8581/com.ctbolt.tap D/ViewRootImpl@e64f6ce[Toast]: mHardwareRenderer.initialize() mSurface={isValid=true 526261696512} hwInitialized=true
07-30 12:26:16.788 8581-8581/com.ctbolt.tap D/ViewRootImpl@e64f6ce[Toast]: MSG_RESIZED_REPORT: ci=Rect(0, 0 - 0, 0) vi=Rect(0, 0 - 0, 0) or=1
07-30 12:26:16.788 8581-8695/com.ctbolt.tap D/mali_winsys: EGLint new_window_surface(egl_winsys_display*, void*, EGLSurface, EGLConfig, egl_winsys_surface**, egl_color_buffer_format*, EGLBoolean) returns 0x3000, [601x116]-format:1
07-30 12:26:17.439 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(964)] "No parameters could be found for 'ShaderTilemap' !!", source: file:///android_asset/www/js/plugins/MVCommons.js (964)
07-30 12:26:17.450 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(24131)] "%cDeprecation Warning: %c%s", source: file:///android_asset/www/js/libs/pixi.js (24131)
07-30 12:26:17.451 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(24132)] " at OrangeLightmask.$.initialize (file:///android_asset/www/js/plugins/OrangeLighting.js:228:11)
at new OrangeLightmask (file:///android_asset/www/js/plugins/OrangeLighting.js:79:21)
at Spriteset_Map.$.createLightmask (file:///android_asset/www/js/plugins/OrangeLighting.js:424:25)
at Spriteset_Map.$.createWeather (file:///android_asset/www/js/plugins/OrangeLighting.js:431:12)
at Spriteset_Map.createLowerLayer (file:///android_asset/www/js/plugins/TDDP_BindPicturesToMap.js:114:14)
at Spriteset_Map.createLowerLayer (file:///android_asset/www/js/plugins/MOG_PixiFilters.js:203:44)
at Spriteset_Map.Spriteset_Base.initialize (file:///android_asset/www/js/rpg_sprites.js:2124:10)
at Spriteset_Map.Spriteset_Base.initialize (file:///android_asset/www/js/plugins/MOG_PixiFilters.js:259:43)", source: file:///android_asset/www/js/libs/pixi.js (24132)
07-30 12:26:17.452 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(24133)] "console.groupEnd", source: file:///android_asset/www/js/libs/pixi.js (24133)
07-30 12:26:18.458 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.096", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.461 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.098", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.483 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.120", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.490 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.127", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.499 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.137", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.504 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.142", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.510 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.148", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.516 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.153", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.521 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.158", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.526 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.163", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.533 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.170", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.538 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.175", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.543 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.181", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.548 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.186", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.553 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.191", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.558 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.196", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.563 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.201", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.675 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.313", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.688 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.325", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.695 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.333", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.700 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.338", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.704 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.342", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.709 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.346", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.713 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.351", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.717 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.355", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.730 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.367", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.736 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.372", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.741 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.379", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.744 8581-8859/com.ctbolt.tap I/FirebaseCrash: Sending crashes
07-30 12:26:18.751 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.388", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.757 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.393", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.764 8581-8581/com.ctbolt.tap D/ViewRootImpl@e64f6ce[Toast]: mHardwareRenderer.destroy()#4
07-30 12:26:18.764 8581-8581/com.ctbolt.tap D/ViewRootImpl@e64f6ce[Toast]: dispatchDetachedFromWindow
07-30 12:26:18.772 8581-8581/com.ctbolt.tap D/InputTransport: Input channel destroyed: fd=185
07-30 12:26:18.773 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.402", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.776 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.413", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.781 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.418", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.788 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.425", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.796 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.433", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.808 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.445", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.847 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.485", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.849 8581-8623/com.ctbolt.tap V/FA: Inactivity, disconnecting from the service
07-30 12:26:18.852 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.490", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.857 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.495", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.873 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.511", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.890 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.527", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.907 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.544", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.924 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.561", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.942 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.579", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.958 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.596", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.989 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.627", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:18.993 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.631", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.007 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.644", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.023 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.660", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.042 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.680", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.072 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.709", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.076 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.713", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.090 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.727", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.106 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.743", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.123 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.760", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.139 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.776", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.157 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.794", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.172 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.809", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.196 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.833", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.201 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.838", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.222 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.860", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.240 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.877", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.255 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.892", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.272 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.910", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.289 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.926", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.305 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.942", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.322 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.959", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.354 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.991", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.359 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "4.996", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.373 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.010", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.403 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.041", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.411 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.049", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.424 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.062", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.453 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.091", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.458 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.095", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.471 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.108", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.487 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.124", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.504 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.141", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.520 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.157", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.537 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.174", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.553 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.191", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.570 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.207", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.587 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.224", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.605 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.241", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.638 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.274", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.642 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.279", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.659 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.296", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.688 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.325", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.694 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.331", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.707 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.344", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.741 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.378", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.746 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.383", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.757 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.394", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.787 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.424", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.791 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.429", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.811 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.449", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.822 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.459", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.856 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.488", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.861 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.494", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.865 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.502", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.891 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.524", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.909 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.540", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.922 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.556", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.954 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.591", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.958 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.595", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.972 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.608", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:19.988 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.624", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.003 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.639", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.020 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.657", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.052 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.689", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.064 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.701", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.082 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.719", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.088 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.723", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.121 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.740", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.126 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.762", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.140 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.777", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.169 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.805", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.174 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.811", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.187 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.823", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.219 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.856", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.225 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.862", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.238 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.875", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.269 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.905", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.274 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.911", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.291 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.922", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.326 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.955", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.326 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.962", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.337 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "5.973", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.367 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "6.004", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.372 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "6.009", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.385 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "6.023", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.416 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "6.054", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.421 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "6.059", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.436 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "6.071", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.459 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "6.088", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.475 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "6.105", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.507 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "6.121", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.523 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "6.147", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.534 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "6.166", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.537 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "6.171", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.551 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "6.185", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.567 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "6.204", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.584 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "6.220", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.602 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "6.237", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.618 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "6.253", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.636 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "6.270", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.651 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "6.287", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.667 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "6.302", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.686 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "6.321", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.694 8581-8581/com.ctbolt.tap D/ViewRootImpl@7050d18[WebPlayerActivity]: ViewPostImeInputStage processPointer 0
07-30 12:26:20.695 8581-8581/com.ctbolt.tap W/System: ClassLoader referenced unknown path: /system/framework/QPerformance.jar
07-30 12:26:20.696 8581-8581/com.ctbolt.tap E/BoostFramework: BoostFramework() : Exception_1 = java.lang.ClassNotFoundException: Didn't find class "com.qualcomm.qti.Performance" on path: DexPathList[[],nativeLibraryDirectories=[/system/lib64, /vendor/lib64]]
07-30 12:26:20.696 8581-8581/com.ctbolt.tap V/BoostFramework: BoostFramework() : mPerf = null
07-30 12:26:20.707 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(3289)] "Unable to preventDefault inside passive event listener due to target being treated as passive. See https://www.chromestatus.com/features/5093566007214080", source: file:///android_asset/www/js/rpg_core.js (3289)
07-30 12:26:20.709 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "6.346", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.709 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "6.347", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.710 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "6.348", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.711 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "6.349", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.711 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "6.349", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.711 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "6.349", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.712 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(16)] "6.349", source: file:///android_asset/www/js/util.js (16)
07-30 12:26:20.741 8581-8725/com.ctbolt.tap W/System.err: java.lang.IllegalStateException: isLoaded must be called on the main UI thread.
07-30 12:26:20.741 8581-8725/com.ctbolt.tap W/System.err: at py.b(:com.google.android.gms.DynamiteModulesA:20)
07-30 12:26:20.741 8581-8725/com.ctbolt.tap W/System.err: at com.google.android.gms.ads.internal.reward.c.O(:com.google.android.gms.DynamiteModulesA:98)
07-30 12:26:20.741 8581-8725/com.ctbolt.tap W/System.err: at com.google.android.gms.ads.internal.reward.b.b(:com.google.android.gms.DynamiteModulesA:40)
07-30 12:26:20.741 8581-8725/com.ctbolt.tap W/System.err: at com.google.android.gms.ads.internal.reward.client.e.onTransact(:com.google.android.gms.DynamiteModulesA:29)
07-30 12:26:20.741 8581-8725/com.ctbolt.tap W/System.err: at android.os.Binder.transact(Binder.java:507)
07-30 12:26:20.741 8581-8725/com.ctbolt.tap W/System.err: at com.google.android.gms.internal.zzed.zza(Unknown Source)
07-30 12:26:20.741 8581-8725/com.ctbolt.tap W/System.err: at com.google.android.gms.internal.zzada.isLoaded(Unknown Source)
07-30 12:26:20.741 8581-8725/com.ctbolt.tap W/System.err: at com.google.android.gms.internal.zzadl.isLoaded(Unknown Source)
07-30 12:26:20.741 8581-8725/com.ctbolt.tap W/System.err: at systems.altimit.rpgmakermv.WebPlayerActivity.showRewardedVideo(WebPlayerActivity.java:109)
07-30 12:26:20.741 8581-8725/com.ctbolt.tap W/System.err: at systems.altimit.rpgmakermv.WebPlayerActivity.showRewarded(WebPlayerActivity.java:93)
07-30 12:26:20.741 8581-8725/com.ctbolt.tap W/System.err: at org.chromium.base.SystemMessageHandler.nativeDoRunLoopOnce(Native Method)
07-30 12:26:20.741 8581-8725/com.ctbolt.tap W/System.err: at org.chromium.base.SystemMessageHandler.handleMessage(SystemMessageHandler.java:7)
07-30 12:26:20.741 8581-8725/com.ctbolt.tap W/System.err: at android.os.Handler.dispatchMessage(Handler.java:102)
07-30 12:26:20.741 8581-8725/com.ctbolt.tap W/System.err: at android.os.Looper.loop(Looper.java:154)
07-30 12:26:20.741 8581-8725/com.ctbolt.tap W/System.err: at android.os.HandlerThread.run(HandlerThread.java:61)
07-30 12:26:20.750 8581-8581/com.ctbolt.tap D/ViewRootImpl@7050d18[WebPlayerActivity]: ViewPostImeInputStage processPointer 1
07-30 12:26:20.752 8581-8581/com.ctbolt.tap I/chromium: [INFO:CONSOLE(1783)] "Error: Java exception was raised during method invocation
at showRewarded (file:///android_asset/www/js/plugins/tappingGame.js:1934:18)
at eval (eval at Game_Interpreter.command355 (file:///android_asset/www/js/rpg_objects.js:10457:5), <anonymous>:1:1)
at Game_Interpreter.command355 (file:///android_asset/www/js/rpg_objects.js:10457:5)
at Game_Interpreter.executeCommand (file:///android_asset/www/js/rpg_objects.js:8915:34)
at Game_Interpreter.update (file:///android_asset/www/js/rpg_objects.js:8823:19)
at Game_Map.updateInterpreter (file:///android_asset/www/js/rpg_objects.js:6094:27)
at Game_Map.update (file:///android_asset/www/js/rpg_objects.js:6001:14)
at Scene_Map.updateMain (file:///android_asset/www/js/rpg_scenes.js:420:14)
at Scene_Map.updateMainMultiply (file:///android_asset/www/js/rpg_scenes.js:412:10)
at Scene_Map.update (file:///android_asset/www/js/rpg_scenes.js:401:10)", source: file:///android_asset/www/js/rpg_managers.js (1783)
07-30 12:26:20.754 8581-8725/com.ctbolt.tap D/ViewRootImpl@3c7d7fb[Toast]: ThreadedRenderer.create() translucent=true
07-30 12:26:20.758 8581-8725/com.ctbolt.tap D/InputTransport: Input channel constructed: fd=230
07-30 12:26:20.758 8581-8725/com.ctbolt.tap D/ViewRootImpl@3c7d7fb[Toast]: setView = android.widget.LinearLayout{707a018 V.E...... ......I. 0,0-0,0} touchMode=true
07-30 12:26:20.767 8581-8725/com.ctbolt.tap D/ViewRootImpl@3c7d7fb[Toast]: dispatchAttachedToWindow
07-30 12:26:20.767 8581-8581/com.ctbolt.tap D/InputMethodManager: HSI from window - flag : 0 Pid : 8581
07-30 12:26:20.784 8581-8725/com.ctbolt.tap D/ViewRootImpl@3c7d7fb[Toast]: Relayout returned: oldFrame=[0,0][0,0] newFrame=[405,1636][675,1752] result=0x27 surface={isValid=true 525571334144} surfaceGenerationChanged=true
07-30 12:26:20.784 8581-8725/com.ctbolt.tap D/ViewRootImpl@3c7d7fb[Toast]: mHardwareRenderer.initialize() mSurface={isValid=true 525571334144} hwInitialized=true
07-30 12:26:20.785 8581-8725/com.ctbolt.tap D/ViewRootImpl@3c7d7fb[Toast]: MSG_RESIZED_REPORT: ci=Rect(0, 0 - 0, 0) vi=Rect(0, 0 - 0, 0) or=1
07-30 12:26:21.070 8581-8695/com.ctbolt.tap D/mali_winsys: EGLint new_window_surface(egl_winsys_display*, void*, EGLSurface, EGLConfig, egl_winsys_surface**, egl_color_buffer_format*, EGLBoolean) returns 0x3000, [270x116]-format:1
07-30 12:26:22.769 8581-8725/com.ctbolt.tap D/ViewRootImpl@3c7d7fb[Toast]: mHardwareRenderer.destroy()#4
07-30 12:26:22.770 8581-8725/com.ctbolt.tap D/ViewRootImpl@3c7d7fb[Toast]: dispatchDetachedFromWindow
07-30 12:26:22.799 8581-8725/com.ctbolt.tap D/InputTransport: Input channel destroyed: fd=230

SOLVED!

[doublepost=1501435610][/doublepost]It works!!!! I've got it working! Thank you! Thank you! Thank you! (cool)(thumbsup)
Here is what I had to do...

in the webActivity I changed my showRewardedVideo function to the following:
JavaScript:
    public void showRewardedVideo() {
        if(Looper.myLooper() != Looper.getMainLooper()) {
            runOnUiThread(new Runnable() {
                @Override public void run() {
                    doShowRewardedVideo();
                }
            });
        } else {
            doShowRewardedVideo();
        }
    }

    public void doShowRewardedVideo() {
        Toast.makeText(this, "show ad", Toast.LENGTH_SHORT).show();
        if (mRewardedVideoAd.isLoaded()) {
            mRewardedVideoAd.show();
        }
    }
You have been such a great help! Thanks again! (hella)(thumbsup)

Now just to get my other ad forms to work...
 
Last edited:

Xilefian

Adventurer
Xy$
0.00
CT_Bolt, you have my admiration. I'm impressed that you managed to solve these final few problems by yourself and figure out your way around my code to get it working. Very nice job, well done.
 

CT_Bolt

Global Moderator
Staff member
Resource Team
Xy$
0.02
CT_Bolt, you have my admiration. I'm impressed that you managed to solve these final few problems by yourself and figure out your way around my code to get it working. Very nice job, well done.
Thank you! I definitely couldn't have made it this far without your help though!

Just a few more minor bumps in the road the hammer out but it won't be much longer now. (jolly)

One odd thing though that I just discovered...
  • On Samsung Galaxy S6 Edge+ the ad plays wonderfully and works as it should;
  • On Samsung Galaxy Note 5 the ad is black except for the footer banner (with the install button), Sound Button & the "X" button.
    • Also on that phone the ad install button doesn't respond but the "X" & Sound Button do.
    • But when the close video button is clicked after the "X" it just goes back to the same thing except the ad now has a play button
    • Pressing the back button on the phone (not the screen) returns to the game as normal.
Both installed using signed release apk files. Both are in Dev. Mode.

Any thoughts about why that is? (slanty)


Well not sure what I changed but I built a new apk and all works smooth now on both devices.
...Just trying to get the banner & interstitial ads back now.
[doublepost=1501586688,1501444442][/doublepost]All is working smooth again, took a little bit but I've learned alot and now have banner, interstitial, & rewardedInterstital ads working smoothly. (hella)(thumbsup)

This thread could be closed now if you'd be so kind. (glad)
@Xilefian, Thanks again for all your help! (jolly)(icecream)
 
Last edited:
Top