Android Market – Work In Progress

Since my foray into Android development and taking a much more keen interest in the various app markets that exist and how they function and perform from a developers perspective. This post aims to vent my frustration’s and hopefully incite some conversation into the future of the “app store”.

Paid vs Free apps

Free apps on the Android Market seem to be the way to go with the vast majority of Android users unwilling to pay for an app, there have been many studies recently stating the huge increase in price of apps on Android compared with iTunes which the top 100 apps will cost you 2.5x more than the top 100 on iOs. The increase in price seen may well be because developers hike the prices up on paid apps to make up for the drop in downloads they will receive so they effectively try to level the playing field but in the long run this is damaging the market. Another Study recently stated that Android developers will make more money from the Amazon Store than the Android Market, this is no reflection on Android users as I believe most will pay for quality apps the same way iOs users do but the fact is it’s just not as easy as proven by Amazon Market success, having a credit card associated with your account lowers the barrier of entry significantly making it much more attractive for users to click and go. On the other hand most Android users never have a need to associate a credit card with their Android account so they effort required to enter card details for a $1 purchase seems like too much work. This has to change Ad Revenue is low for a developer users will slate apps with many ad’s or intrusive ad’s rightly so but developers have little choice and what keeps top developers in a Market when there’s another one that’s making developers more money (apart for Objective c of course)

Next Steps – In my opinion 

Card Details – When you buy an Android phone it requires you to create a gmail account so why when creating this account can the user not be prompted to supply credit card details it doesn’t have to be forced it can be optional but state that it will improve user experience and that way improve Market revenue and developer revenue in one fell swoop which I believe it would.This may become a reality once Google Wallet takes off and they fix the issues, I haven’t bought a Android device since the Galaxy S so don’t know if this has already been implemented  but would love to hear peoples thoughts on this.

Other Options

Donations – From talking to a lot of developers I know that most only charge for their software to make a living if they couldn’t they wouldn’t but after spending a lot of time on a project it’s nice to be rewarded for that. I know that you can implement donations within your app but I believe they aren’t viewed in a good light may be due to security of payment I don’t know but if only Google could provide a section similar to free or paid but where developers could post their apps for a donation. Just an idea that could maybe work would love to get some developers views and user’s views on this.

XXX – Many have probably noticed that many apps on the market are Adult/Sex related and that they soon shoot to the top of pages quickly leaving many useful apps in the shadows as clearly sex does sell now all I ask is for some kind of filter that will section these apps in there own section. As  a Market we are still a bit behind iTunes who faced a similar issue with Fart apps and they had to do something about this so I believe Android would gain from doing something similar.

 

In conclusion the Android Market is still young and got a lot of maturing to do, but there are still a few things that could be better. We really have to keep the focus on keeping developers happy on the Android platform and securing their backing as its the software that will drive the future of the platform.

Migration from AdMob to Leadbolt !

Thought I’d give an update on how the swap of ad providers has gone so far after a few days.

I have almost migrated all my Ad’s onto Leadbolt app banner from Admob and I have seen interesting results so far, app banner advertises an App most of the time and you don’t get paid for clicks but conversions and the EPC seems to be substantially higher than Admob. At the moment I still have some users on the Admob Ad’s perhaps they haven’t yet updated the app.

 

Here’s a quick snap shot of current proceedings

Admob – I seen a rise back to the highs of $0.03 cents woohoo 

Only showing the last 4 days as that’s when changes went in

 

 

 

 

LeadBolt – Note following figures are from last 2 d

ays, with $0.18 cents, and $0.0.7 cents from the two coversions

 

 

 

 

So overall first few days have been pretty good considering the rates that Admob has offered,I will keep everyone posted on whether this continues. In the meantime I would recommend signing up and trying Leadbolt for yourself you can do this via this refferal link – Leadbolt Ad’s

 

Good Luck – I have started work on latest project so will be tied up with that for some time will post as soon as time frees up with an update on the Leadbolt platform.

Week 2 – Android Market (Beginners Experience)

Last week I posted about my first week on the Android Market, This week has seen the end of Week 2 and I thought I would update on what has happened with my app Killerballs below :

https://market.android.com/details?id=com.cmcg.killerballs

Android Market (Installs)

So last week I was just about hitting 50 installs, a week later and I am around 150 the net installs is much lower at around 50/60% of this it does fluctuate day to day. I am fairly happy with this anyone that had read last weeks post will know that the game I made was meant to be an end to end learning experience of everything android so these figures seem quite good considering.  The feedback on the blog and the market has been extremely useful and It will definitely make my future projects run more smoothly.

As it stands currently my downloads are slowing creeping up by a few more each day, which can only be a good thing.

AdMob (Google’s Advertising Platform)

As I said last week I was disappointed with the AdMob Platform as the revenue per click was very low at $0.03 now I’m in the UK so with conversion that’s even lower, Also the fill rates weren’t all that great but they have slowly began to creep up once again. Now considering $0.03 a click I stuck with AdMob as this could add up over a number of clicks and especially because the primary goal was not to make money but to learn but…….. The days of the  3 cent click are long gone recently I have been getting more around the 1 and 2 cent mark i have yet to reach the dizzy heights of 3 cents again. This said I think tonight is the night that AdMob is turned off and I look to a new provider.

Leadbolt(App Wall)

the App Wall I implemented as part of menu has now been up for just over a week and in one conversion I earned 64 cents, A conversion in Leadbolt is when someone for example downloads an app listed on the app wall. I am really happy with Leadbolt so far I have heard a lot of bad things about them after my last post but I think If you are careful with how you implement you can see gains that overshadow AdMob

I would recommend Leadbolt on the basis that you are careful about how you show ads I don’t believe you should use the AirPush ads or App Icon features as they seem highly obtrusive to the users and I am positive this would result in terrible ratings on the Market even though you may be tempted as they will give you high gains but Is it worth it when users boycott your app because your that guy?

Of course this is easy for me to say as I don’t develop Apps for my living I am merely a hobby app developer outside my normal working hours and I do understand that it can be very difficult for developers to make serious money on the Android Market compared with iOS developers but I still think tact with ads will gain you much more respect.

Scoreloop

I added Scoreloop to my app and It was very easy to integrate the main function I wanted was leaderboard’s this has proved a great addition and has added some competition to the app that was previously not there before. Check it out!

Next Steps

I have now got the decision on who to chose to implement my banner ads now I feel its time to leave AdMob. MobClix and MobFox get solid reviews and will look at them but I am very tempted to see what leadbolt offers in terms of banner ad’s I am just very reluctant that they may not filter the ad content and you get adult rated adverts but I will look further into this and will post if I see any improvement and may even do a comparison post. I have started a new project that hopefully I can shed some details on in the near future so the lessons being learnt with Killerballs will hopefully bode well for the new project.

Parcelable – Android passing data between Activities

When I began Android development I had a basic understanding of the Activity life-cycle but I had no understanding how to pass data between these classes. My java instincts told me I could make my data static and pass between that way or I could use Serializable but I had seen and heard horrific lag and memory issues that came with this approach. So I thought there must be a better way, surely Android have accounted for this and indeed they had.

I found Parcelable at first I wasn’t sure of how to implement and resources online where helpful but not for collections of custom objects so I write this in the hope that it can help somebody.

Setting the Scene

Lets say you have a collection of custom objects for this we call our object ball and we have a list of balls List<Ball>, changes to the list of balls are made in Activity A but you want to send them to Activity B.

Let’s Start

Take your data class in this example the Ball class and make it implement Parcelable you will then need to add the following methods to the Ball class or your own data class.

Custom Constructor 

This will be used to create your Data object from the Parcel, so that when Activity B receives the Parcel from Activity A it can convert it to an object. As you can see below this must accept a parcel of data as input and then assign the values you need according example below.

public Ball(Parcel source) {
value = source.readInt();
player = source.readInt();
}

Write to Parcel

This as the name suggests this is used to write the data to the parcel, all you want to do here is write all the values your class need to be assigned in its constructor to the destination parcel as shown below.

@Override
public void writeToParcel(Parcel dest, int flags) {
dest.writeInt(value);
dest.writeInt(player);
}

Finally add this which tells Parcelable what it should do with this class its pretty self explanatory. Please comment if you want to know more.

public static final Parcelable.Creator<Ball> CREATOR =
new Parcelable.Creator<Ball>() {

@Override
public Ball createFromParcel(Parcel source) {
return new Ball(source);
}

@Override
public Ball[] newArray(int size) {
return new Ball[size];
}
};

Please note you may also have to implement the describeContents method I don’t use this you can if you wish but i typically leave this returning 0.

Sending Activity

Now that you have your data class strapped up and ready to be parceled. In the class that you want to pass your List<Ball> from all you have to do is add it to the intent that you are about to invoke.

Intent activityB = new Intent(v.getContext(),ActivityB.class)

activityB.putParcelableArrayListExtra(“balls”,(ArrayList<? extends Parcelable>) balls);

startActivityForResult(activityB, 0);

Where balls is the list of your ball objects.

Receiving Activity

This is much more simple than you ever expected as now you have already done all the work.

balls = getIntent().getParcelableArrayListExtra(“balls”);

Grab the parcel from the Intent and assign it to your List<Ball> variable in Activity B .

Conclusion

There you have it, Its a simple and effective way of passing data between Activities. Its quick and lightweight which means its easy on memory and reduces the lag or loading times whilst increasing performance. Hopefully someone will find this useful as I think I would have when I was looking.

Any questions or comments, Please ask

Thanks,

Chris

My First week on Android Market

For those that have been reading this over the last few weeks I thought I would share my experience’s with finally publishing an app to the Android Market.

Here it is – Please give it a try

The app as you will have gathered from previous posts is a simple game the concept being it would be a good learning exercise. Once I completed the app I thought I would place it on the market and use it to see how the publishing side works, So here’s  what i’v found out after a week.

1. Its really hard to get noticed!

This is one thing I have found quite frustrating, albeit the app I made is no Cut the Rope or Angry Birds but I wanted people to download and play and critique, leaving your app on the market with no promotion will get you nowhere. I posted on reddit the community is great and 99.9% of the time give you great feedback  the other 0.01% someone mentions the app would be made better with the addition of a penis or boobs but the rest of the comments more than make up for this, from reddit I recieved great feedback and support and made few changes to my game but after reddit I found myself with no other form of promotion. I could have spammed forums and so on but I wasnt keen on this so for now I have gave up to concentrate on another project I am excited about, though I am still enhancing Killerballs. So if you want your app to be popular you have to push it out there.

Of course their is the Amazon Market and GetJar to explore this is an option I may look into in future I will post if I do!

2. Ad’s – Worth it ?

Now if you are like me you will have already seen the vast majority of blogs that post sensational earnings from the android market in a short period of time with no promotion and all that, now I am not saying they are lying and no so long ago I believe it was a lot easier to make money from ad’s but now it is much harder.

I signed up with admob, you get around $0.03 cents per click of an ad, for an app like mine which currently has low traffic and is likely to stay that way it is unlikely I will ever make any decent return on ad’s. The biggest lesson i made with the ad’s the first few days is I forgot all about the users network connection as I was on wifi while testing so ad’s loaded with super speed even the larger ad’s so I had them inbetween rounds on a time delay dialog. For the first few day my requests were in the 100’s but impressions very low, I quickly realised this was because I was trying to show large ads in a small space of time and they simply never had time to load. I fixed this in an update and seen a great difference as shown below.

Ad Table

The add table for first week

So seeing the poor return from Admob I decided to look at better alternatives and found Leadbolt, If you havent tried I strongly encourage people to take a look they Ads even come in HTML form so you dont need to integrate any SDK like with most providers. The provide a feature called  an AppWall which gives the user a list of top apps that they can download and of course you get compensated for this. Check it out here – LeadBolt – It is free and easy to sign up and you get a great service ! I will update as I use them more

3. Scoreloop

If you are making a game and need leaderboards,awards or anything else of that nature check scoreloop out I have just used them to integrate a highscore board but will be looking into them a lot more.

Conclusion 

I have made a grand total of  $0.17 cents which is around 10 pence UK money so a long way before Im retiring

So far a slow week (5 days) for my app hopefully it can start to pick up as i update it and improve it after all it was a learning exercise and wasnt meant for public consumption so is far from perfect. I will also keep you updated on the latest Ad providers and how they treat me and Id love to hear your feedback.

Thanks

Week 3 – App Published

It’s been a tricky few weeks but finally all the learning and extra hours outside of work have paid off. I have reached my 2012 goal of publishing a game to the Android Market Killerballs.

In my last post I was discussing what Ad Provider to choose but in the end I stuck with AdMob even though the ad revenue isnt great but Im still treating this as a learning experience as this is an unknown realm to me. My game is a demo version of the potential free version that might come around if the demo proves popular. Please have a look and tell me what you think.

It got increasingly harder and harder to finish the app and publish it , as the bug fixing and long arduous nights of trying to solve errors was taking its toll and as it was my first app I feared the feedback may be poor and knock my confidence. If I can give anyone advice I would say take the jump and publish your app otherwise all that work has been lost, even if you don’t get the best feedback Its all about learning and people will never usually just abuse you the criticism is usually nice and constructive.

Before I started this app If I had an idea I had no knowledge or way of planning how it will work, now after completing this small project and learning as I came across obstacles I am able to plan future projects and estimate the work required.

So my advice is get publishing those ideas that you pushed aside. Going to start work on planning my next application which I think will be much more popular as I am quite excited about it myself. Also will post a tutorial on Parcelable a part of SDK I found really helpful and probably do some analysis of AdMob and provide a review depending how it all works out.

 

Will keep posted, Thanks

Chris