One week after my first ANE release comes my first update !
While writing a sample AIR app, I noticed some bugs mainly related to the ANE's context.
Following doc and tutorials, I made a wonderful error : using a static context
On Ads4AIR case, using a static context is an error because if you ask for interstitial ad THEN a banned ad, the banner ad request won't work...because it's stil initialized with interstitial context.
I fixed a lot of others memory leak and was able to code some workaround on Adfonic's limits.
Now it's time to work on the Blackberry !
Be free to
- download the new version (v1.0.1)
- make some tests on your Android device
- check the source of the sample AIR app
Showing posts with label ane. Show all posts
Showing posts with label ane. Show all posts
19 April 2013
10 April 2013
My first ANE Ads4AIR : Ads from Admob, Adfonic, Inmobi and some others...
Today I release my first AIR Native Extension.
While only for Android for now, the next release should include BlackBerry support.
What is Ads4AIR ?
This group of ANE offers you alternative to Admob.
Some ANE already exist which give you access to Admob ads on Android and iPhone, my goal was to let you choose.
First, because Admob doesn't support Blackberry.
Second, because choice is the key and Google isn't the only one.
It also allows you to use the ads network you want anytime you want : when your user is from india, when admob returns no ads, when your user is on wifi....It's up to you !
Which are the ads networks supported ?
Adfonic
Adiquity
Admob
Inmobi
Inneractive
Madvertise
Smaato
I tried to support banner and interstitial for the most of them.
Unfortunatly, some SDK are buggy or work only on native Android app.
If you need another one, just ask me !
What's the licence ?
I tried another way to earn money : success sharing.
In fact, it's really simple : if you earn money with Ads4AIR, I'll earn too.
10% of the ads shown are from my own Adfonic account.
Since I understand developers could be afraid to not control every ad shown, it's still possible to register.
And since I'm a nice guy, YOU define the price.
Contact me for my paypal account, transfert the fund and I'll send you a serial id.
Where could I find it ?
On http://www.willna.com/extensions/
More ANE will come if this one is a success so...hurry up, use it and give me your feedback !
While only for Android for now, the next release should include BlackBerry support.
What is Ads4AIR ?
This group of ANE offers you alternative to Admob.
Some ANE already exist which give you access to Admob ads on Android and iPhone, my goal was to let you choose.
First, because Admob doesn't support Blackberry.
Second, because choice is the key and Google isn't the only one.
It also allows you to use the ads network you want anytime you want : when your user is from india, when admob returns no ads, when your user is on wifi....It's up to you !
Which are the ads networks supported ?
Adfonic
Adiquity
Admob
Inmobi
Inneractive
Madvertise
Smaato
I tried to support banner and interstitial for the most of them.
Unfortunatly, some SDK are buggy or work only on native Android app.
If you need another one, just ask me !
What's the licence ?
I tried another way to earn money : success sharing.
In fact, it's really simple : if you earn money with Ads4AIR, I'll earn too.
10% of the ads shown are from my own Adfonic account.
Since I understand developers could be afraid to not control every ad shown, it's still possible to register.
And since I'm a nice guy, YOU define the price.
Contact me for my paypal account, transfert the fund and I'll send you a serial id.
Where could I find it ?
On http://www.willna.com/extensions/
More ANE will come if this one is a success so...hurry up, use it and give me your feedback !
Labels:
AIR mobile,
ane,
monetizing,
willna
06 November 2012
Framework linkage configuration for ANE library
When you create a Flex library project, the default configuration is to mark framework linkage as external.
This make sense if you add the library project on another project, since this project will include the framework classes the library will use.
Three reasons to mark framework linkage as merged into code are
1/ framework-independant SWC, to avoid future changes in framework which could break code
2/ code loaded as module
3/ AIR Native Extension
On previous versions of Flash Builder, you had to link on ANE's SWC and to make the magic works, you had to use external link type.
So, I assume it's still doing the same behind the scene on Flash Builder 4.6+
If it uses external linking, the SWC will work as a standalone library so you need to include any (sub)classes used ...hence the framework classes used must be included.
This make sense if you add the library project on another project, since this project will include the framework classes the library will use.
Three reasons to mark framework linkage as merged into code are
1/ framework-independant SWC, to avoid future changes in framework which could break code
2/ code loaded as module
3/ AIR Native Extension
On previous versions of Flash Builder, you had to link on ANE's SWC and to make the magic works, you had to use external link type.
So, I assume it's still doing the same behind the scene on Flash Builder 4.6+
If it uses external linking, the SWC will work as a standalone library so you need to include any (sub)classes used ...hence the framework classes used must be included.
Labels:
AIR mobile,
ane
04 November 2012
Understand Flex Build Packaging : Native Entensions message
After a bad experience with WP8, I came back to my current experiment : Native Extension.
I won't explain you what is an AIR Native Extension, look at the dedidacted page from Adobe but more how to read the message on the Native Extension property page.
I almost lost 2 hours because I didn't understand why the default and not the native extension was used so let me share with you how I fixed it and what I discovered at the same time.
When you want to include an ANE on your mobile/desktop AIR project, you first had to include it on Flex Build Path / Native extensions
Doing this, Flex checks the targets (at least 2 : default and 1 native) and the AIR version needed.
If it's ok, it adds the extension ID on the app.xml even if, from what I read on the net but didn't check by myself) it seems it sometimes failed to do it...
On my current ANE, I only did default and android native at the moment.
So, Android Native will be used for Android deployment and Android on device debug while the default will be used for android simulator debug, desktop and any other devices deployment.
Well...it's what I thought (and read)...but in fact, there is another step to check.
I don't know if it's because I updated a lot my ANE or it wasn't done by default but, in fact, doing thing tell Flex to use the default (actionscript) extension anywhere.
So ALWAYS open the Flex Build Packaging property of your project and check the Native Extensions page.
By default, I discover the Package checkbox wasn't checked (again, I don't why and when it was unchecked but not by me !)
I so checked the Package checkbox and it finally used my native code, not my actionscript code.
I then wanted to check the iOS, using only actionscript code.
According asdoc, default is used for any platform without native code.
I checked the Package checkbox on the iOS part and got an strange red cross icon
I compared with Android part
If you read carefully, you'll see this on the iOS part
This ANE does not support iOS platform in red with a red cross icon (which usually means ERROR)
but, 4 lines after, you could also read
Apple iOS Supported : Yes
Errr...Supported or not ?!! Probably not since I have one big red cross icon !
In fact, you should read the first line as
This ANE does not support iOS platform NATIVELY
and the 4th line is correct.
In this case, the ANE doesn't include iOS native code but, since there is a valid default platform, iOS is supported.
Adobe added an Microsoft error (you know, error which is not an error)
So, always check if the Package checkbox is selected and don't take care of the icon.
I won't explain you what is an AIR Native Extension, look at the dedidacted page from Adobe but more how to read the message on the Native Extension property page.
I almost lost 2 hours because I didn't understand why the default and not the native extension was used so let me share with you how I fixed it and what I discovered at the same time.
When you want to include an ANE on your mobile/desktop AIR project, you first had to include it on Flex Build Path / Native extensions
Doing this, Flex checks the targets (at least 2 : default and 1 native) and the AIR version needed.
If it's ok, it adds the extension ID on the app.xml even if, from what I read on the net but didn't check by myself) it seems it sometimes failed to do it...
On my current ANE, I only did default and android native at the moment.
So, Android Native will be used for Android deployment and Android on device debug while the default will be used for android simulator debug, desktop and any other devices deployment.
Well...it's what I thought (and read)...but in fact, there is another step to check.
I don't know if it's because I updated a lot my ANE or it wasn't done by default but, in fact, doing thing tell Flex to use the default (actionscript) extension anywhere.
So ALWAYS open the Flex Build Packaging property of your project and check the Native Extensions page.
By default, I discover the Package checkbox wasn't checked (again, I don't why and when it was unchecked but not by me !)
I so checked the Package checkbox and it finally used my native code, not my actionscript code.
I then wanted to check the iOS, using only actionscript code.
According asdoc, default is used for any platform without native code.
I checked the Package checkbox on the iOS part and got an strange red cross icon
I compared with Android part
If you read carefully, you'll see this on the iOS part
This ANE does not support iOS platform in red with a red cross icon (which usually means ERROR)
but, 4 lines after, you could also read
Apple iOS Supported : Yes
Errr...Supported or not ?!! Probably not since I have one big red cross icon !
In fact, you should read the first line as
This ANE does not support iOS platform NATIVELY
and the 4th line is correct.
In this case, the ANE doesn't include iOS native code but, since there is a valid default platform, iOS is supported.
Adobe added an Microsoft error (you know, error which is not an error)
So, always check if the Package checkbox is selected and don't take care of the icon.
Labels:
AIR mobile,
android,
ane
Subscribe to:
Posts (Atom)




