Beware - Adsense and other ad networks may not be interested in your Android inventory

by » Wed, 29 Apr 2009 23:22:21 GMT

Sponsored Links
 I got banned by Adsense.  But this is not the post you think it is.  I
am not going to complain about the balance I'll never be paid for, nor
suggest that Adsense is a bunch of crooks, etc.  I just want to bring
light to another difficulty in monetizing Android applications to help
others keep their accounts from getting banned.

I have an app in the market, Real Estate Droid, that, at points, open
up Webviews with relevant information pulled from web services
(currently mortgage rates and property values, soon to include many
others).  The pages loaded contain responses to queries made from
inside the app.  This was working out very well for me, because the
pages were highly targeted to a valuable niche, giving me a very
satisfactory eCPM on Adsense.

Adsense does not approve of something I have done in conjunction with
this.  It is impossible to tell what they have a problem with, because
it is their policy not to describe why an account is disabled.  It
could have been any of the following (or anything else I haven't
thought of):

1) I chose to use Adsense for Content for these pages, rather than
Adsense for Mobile, because the Android browser is fully capable of
rendering traditional Adsense ads.
2) I forgot to display a privacy policy, though I fixed that in the
course of my appeal.
3) They do not consider the content to be rich enough to warrant
showing Adsense on it. (I kept the result pages relatively sparse in
order to fit on a 480x320 screen with minimal scrolling).
4) G1 traffic seems to be piped through a limited number of proxies,
so my traffic looks like it comes from 100 sources instead of 100000,
and thus looks invalid.

This is very unfortunate for me.  No other ad networks that I've found
(and I've looked into a LOT) offer the level of targeting or potential
revenue per click levels offered by Adsense, so my strategy of going
after a higher value/lower volume market is shot.  This also means
that I probably won't be able to take advantage of any Adsense Android
SDK that may be released in the future.

Another developer that I've been speaking to has used a somewhat
similar strategy for monetizing his free app - the high score page is
a web page that displays ads.  He's already been banned by 2 other ad
networks (with no explanation, of course).

So if I plan to do anything ad-supported on Android, I'm going to have
to go back to the model that has worked (well, at least somewhat) for
me so far - untargeted, high-volume stuff like my slot machine
application, using an Android SDK like Admob or Mojiva.

Or more likely, I'll port what I have already to iPhone and see if I
can accomplish something there.  iPhone seems to have much more mature
infrastructure for monetizing with ads, and fewer roadblocks (read:
Google Checkout) to users buying apps.  I'm not going to walk off in a
huff and swear never to come back (I'd be throwing away way too much
accumulated technical and domain expertise) but my hopes are growing

I wish you all continued luck in the request to entertain/inform some
mobile users and make a few bucks in the process.

Other Threads

1. Android File System Permission (Accessing Private folder in file system)


I am facing problem while accessing private folder like "/data/app"
from program in android.
Can you suggest me how to access private folder in android using
programming or suggest some other way to do this.
This will be great help for me.

Thanks & Regards,
vinay yadav


2. Crash in call to opeCameraHardware()


I trying to use the Qualcomm (libqcamera) Camera HAL to connect to
camera. I used the static function openCameraHardware() of ui/
CameraHardwareInterface.h to connect to the camera but I get
segmentation fault.

Following is the code that I used -
  sp<android::CameraHardwareInterface> chi;
  chi= android::openCameraHardware();

Following is the crash dump --

V/QualcommCameraHardware(  398): createInstance: E
V/QualcommCameraHardware(  398): constructor EX
V/QualcommCameraHardware(  398): setParameters: E params = 0xbece13d8
V/QualcommCameraHardware(  398): requested size 480 x 320
V/QualcommCameraHardware(  398): actual size 480 x 320
V/QualcommCameraHardware(  398): initCameraParameters: E
V/QualcommCameraHardware(  398): loading libqcamera
V/QualcommCameraHardware(  398): waiting for REX to initialize.
V/QualcommCameraHardware(  398): Received REX-ready signal.
V/QualcommCameraHardware(  398): REX is ready.
V/QualcommCameraHardware(  398): starting REX emulation
V/QualcommCameraHardware(  398): init camera: waiting for QCS_IDLE
I/DEBUG   (   32): *** *** *** *** *** *** *** *** *** *** *** *** ***
*** *** ***
I/DEBUG   (   32): Build fingerprint: 'htc_asia_india/htc_magic/
I/DEBUG   (   32): pid: 398, tid: 404  >>> com.marakana <<<
I/DEBUG   (   32): signal 11 (SIGSEGV), fault addr 0000081a
I/DEBUG   (   32):  r0 a94aa8a8  r1 0000081a  r2 a94aa8a8  r3 00000008
I/DEBUG   (   32):  r4 a94aa8a8  r5 a94c77dc  r6 a94cea3c  r7 bece12dc
I/DEBUG   (   32):  r8 45253e38  r9 afe39dd0  10 a949bec1  fp 00000001
I/DEBUG   (   32):  ip a94c78ec  sp 45353e1c  lr a9419a4f  pc
afe1b97c  cpsr 80000030
I/DEBUG   (   32):          #00  pc 0001b97c  /system/lib/
I/DEBUG   (   32):          #01  pc 00019a4c  /system/lib/
I/DEBUG   (   32):          #02  pc 00093396  /system/lib/
I/DEBUG   (   32):          #03  pc 00094094  /system/lib/
I/DEBUG   (   32):          #04  pc 0008ab58  /system/lib/
I/DEBUG   (   32):          #05  pc 0009b4d0  /system/lib/
I/DEBUG   (   32):          #06  pc 0009b71a  /system/lib/
I/DEBUG   (   32):          #07  pc 0009bf08  /system/lib/
I/DEBUG   (   32):          #08  pc 0000f880  /system/lib/
I/DEBUG   (   32):          #09  pc 0000f3f4  /system/lib/
I/DEBUG   (   32): stack:
I/DEBUG   (   32):     45353ddc  00000000
I/DEBUG   (   32):     45353de0  00000000
I/DEBUG   (   32):     45353de4  00000000



3. transforming an activity to a modal full screen dialog

4. Thursday, March 11 - Mass GTUG meeting - Android Development - Developer Perspective

5. Difference between auto sleep mode and pressing the power button when using Alarms?

6. March 11th, 6-8 pm Mass GTUG meeting - Android Development - Developer Perspective

7. Help me to select some days from a calendar base on some dates that I have please