May be i'm too much stupid, but it doesn't work for me. I can't run project in player, because it said i don't have admob.lua and other stuff. Even if i set ads to one screen it still available on all screens. But main problem is about start project in player. How to do this?
@unlying it won't work on Gideros player as it is, you'll need to compile player with plugin inside on your own. And yes it is an overlay over the Gideros view, so it will always appear, but what you can do, is to set visibility to true of false, when transitioning from different scenes, thus making it to appear only on scenes that you want
this is usually either because admob.so can't be found (check that it is in both folders inside libs) or you haven't added admob.so in the main activity as System.loadLibrary("admob");
Thank for the clarification. I do have a libadmob.so file in both libs folder, I also have the System.loadLibrary("admob") in the activity. Any other suggestion?
yes, in first attempts I was using: require("admob") then I have also tried the syntax You suggested: require 'admob' (I do not know if there is any difference between them)
@ar2rsawseen: There are some bugs in your JNI code in Flurry and AdMob plugins. It's safe to store the references to jmethods but jclass references must not be stored directly (99% of the time it will work but soon or later it will crash). To store it use a global reference:
For example, in g_initializePlugin(...):
jclass class_local = env->FindClass(...);if(!class_local){// error}
g_class = static_cast<jclass>(env->NewGlobalRef(class_local));// <-- Create the global reference
env->DeleteLocalRef(class_local);// <-- Delete the local referenceif(!g_class){// error}
And delete it in g_deinitializePlugin(...):
env->DeleteGlobalRef(g_class);
Also it's very important to delete all local references manually (all references returned by env->New...(...) functions). Theorically they will be collected by Java but in practice if you call them in a loop the stack will collapse.
Coder, video game industry veteran (since the '80s, ❤'s assembler), arrested - never convicted hacker (in the '90s), dad of five, he/him (if that even matters!). https://deluxepixel.com
You might want to fix the error in your instructions:
"android:configchanges="keyboard|keyboardHidd"
It should be configChanges, not configchanges (uppercase C).
Coder, video game industry veteran (since the '80s, ❤'s assembler), arrested - never convicted hacker (in the '90s), dad of five, he/him (if that even matters!). https://deluxepixel.com
While checking out interstitial ads I've noticed this comment:
Note: All publishers can run rich Interstitial House Ads in their own applications. Paid interstitial ads, however, are only offered to a select group of publishers. If you become eligible, Google will be sure to contact you.
The Interstitial House Ads might be useful though?
Coder, video game industry veteran (since the '80s, ❤'s assembler), arrested - never convicted hacker (in the '90s), dad of five, he/him (if that even matters!). https://deluxepixel.com
simply pass "interstitial" as ad type. To test it you may need to add your device as test device.
Search for tag:Ads in logcat to get your device id, you'll need to add. And then inside AdMob.java plugin file inside loadAd method, where I commented out mine //adRequest.addTestDevice("545D828B0002576098659942B35646D7"); uncomment the line and add you're device id
Edit: Figured it out, I need to create a GiderOS player that starts in landscape with it's manifest in landscape.
Coder, video game industry veteran (since the '80s, ❤'s assembler), arrested - never convicted hacker (in the '90s), dad of five, he/him (if that even matters!). https://deluxepixel.com
I'm baffled at the moment - I had the plugin working and it looks like just what I need, but now (perhaps due to updating the Gideros studio to 2012.9.9?) I get errors in (myActivity).java on these steps:
The errors: id cannot be resolved or is not a field layout cannot be resolved or is not a field
I've re-exported the project, completely replacing my old Android project, and repeated all the plugin integration steps, and I still get the same effect. The R.java that Eclipse generates has no id or layout class, only attr, drawable and string.
Comments
https://github.com/ar2rsawseen/AdMob
and the docs:
http://appcodingeasy.com/Gideros-Mobile/AdMob-plugin-for-Android
Likes: atilim, marbolec, thanhquan1512
Thanks
I will be publishing the Mobclix plugin during the Christmas break (RL just has a habit of getting in the way in the run up to Christmas)
Likes: marbolec, luyimoon
Website: http://www.castlegateinteractive.com
https://play.google.com/store/apps/developer?id=Castlegate+Interactive
So this one can count as stable?
Website: http://www.castlegateinteractive.com
https://play.google.com/store/apps/developer?id=Castlegate+Interactive
But main problem is about start project in player. How to do this?
And yes it is an overlay over the Gideros view, so it will always appear, but what you can do, is to set visibility to true of false, when transitioning from different scenes, thus making it to appear only on scenes that you want
I have followed the instructions here
http://appcodingeasy.com/Gideros-Mobile/AdMob-plugin-for-Android
the app compile fine but during execution it exit and the LogCat show this error message: D/Gideros(6117): variable 'admob' is not declared
what happen? any suggestion?
Any other suggestion?
require("admob")
then I have also tried the syntax You suggested:
require 'admob'
(I do not know if there is any difference between them)
nothing changed, always same error...
You can either upload to this forum or send me to my nickname at gmail.com
It's safe to store the references to jmethods but jclass references must not be stored directly (99% of the time it will work but soon or later it will crash). To store it use a global reference:
For example, in g_initializePlugin(...):
Theorically they will be collected by Java but in practice if you call them in a loop the stack will collapse.
For example:
But, can it do Interstitials? https://developers.google.com/mobile-ads-sdk/docs/admob/advanced
https://deluxepixel.com
Likes: SinisterSoft
You might want to fix the error in your instructions:
"android:configchanges="keyboard|keyboardHidd"
It should be configChanges, not configchanges (uppercase C).
https://deluxepixel.com
Note: All publishers can run rich Interstitial House Ads in their own applications. Paid interstitial ads, however, are only offered to a select group of publishers. If you become eligible, Google will be sure to contact you.
So are you eligible @SinisterSoft ?
The Interstitial House Ads might be useful though?
https://deluxepixel.com
https://github.com/ar2rsawseen/AdMob
simply pass "interstitial" as ad type. To test it you may need to add your device as test device.
Search for tag:Ads in logcat to get your device id, you'll need to add. And then inside AdMob.java plugin file inside loadAd method, where I commented out mine
//adRequest.addTestDevice("545D828B0002576098659942B35646D7");
uncomment the line and add you're device id
Edit: Figured it out, I need to create a GiderOS player that starts in landscape with it's manifest in landscape.
https://deluxepixel.com
Likes: luyimoon
Likes: vitalitymobile, SinisterSoft
setContentView(R.layout.main);
FrameLayout layout = (FrameLayout)findViewById(R.id.layout_main);
The errors:
id cannot be resolved or is not a field
layout cannot be resolved or is not a field
I've re-exported the project, completely replacing my old Android project, and repeated all the plugin integration steps, and I still get the same effect. The R.java that Eclipse generates has no id or layout class, only attr, drawable and string.
Any ideas?
PaulH
And that there is a layout with layout_main id there