Thursday, October 6, 2016

Wow...turned down in 10 seconds flat!

I think that the last time that I was turned down so quickly was when I was a teenager and asked the most popular girl (Charlotte) in our class out to the local drive-in.  It was awkward, and she was polite, but the answer was definitely NO.

So, I'm no stranger to rejection, but I've got to admit that the AdSense gatekeepers are giving Charlotte a very close run for her money in the race to reject this poor ol' boy from the sticks...wah, wah, wah...

From the time that I updated my blog to have a Privacy statement (at the very end of the this blog page) and resubmitted my request for an AdSense account and received a new rejection email was...wait for it...74 minutes!

The last time that I tried the approval process, the total time it took for the evaluation folks to process my request and reject it was 10 DAYS!

I've got to give it to the AdSense gatekeepers; they are getting really prompt at telling me NO.

However, here's my beef with them at this point in time.

I don't mind being told NO.  I don't like it, but I'm used to it.  After all, I've been married to a wonderful woman for over 33 years and she has told me NO almost daily about one thing or another.  You get it right? I'm used to being told NO.

However, I do believe that it's a simple sign of RESPECT for the entity that is saying NO to be specific on why they are saying NO.  What I'm feeling from AdSense/Google/Blogger at this point in time is a total lack of respect for me as a potential customer/partner of their services.

Here's a series of screen shots that show my latest round of interaction with AdSense and Blogger on this AdSense approval request:


  • Here's the AdSense screen asking me to resubmit my application request:

  • Here's the AdSense screen that thanks me for my application:

  • Here's the Blogger page telling me that they are waiting for AdSense to approve me:

  • And here's my newest rejection letter:

My problem with this response is that, after leaving my application request in the queue for 74 minutes, they gave me the same generic response that they gave me after leaving my previous application request in their queue for 10 days.  They list 6 bullets of what they mean by "insufficient content".  How about if they just come out and say, hey dude, your content sucks, or hey dude, you've got  to have content that shows us (the folks at AdSense) respect for our efforts rather than being a sarcastic tool?

Really!  Really? Really!!!



Wednesday, October 5, 2016

Found a site that explains AdSense a bit more...

Hey there, one of my friends just turned me on to another website that explains some of the things that you must do prior to successfully applying for an AdSense account.

Here's the URL:

12 Things to Do Before Applying for Google AdSense

One thing that this blog really emphasizes is that you need a Privacy Policy and a Disclosure Policy on your blog before the AdSense gatekeepers will grant you access to the AdSense Kingdom.

So, my blog is running on Blogger.com (as you can see from the URL in your browser's address bar).  Unfortunately, I have yet to find the Blogger.com option that gives me the option of having a custom privacy policy in the footer of my blog.  Big, badda, boom! (oblique reference to the 5th Element)

Update: So, I found a way to include a privacy statement at the bottom of the Blogger page.  To see what I put as our privacy statement, scroll down to the absolute bottom of this web page.  Nothing fancy, but it's still a valid privacy statement.

Tuesday, October 4, 2016

How to Digitally Sign your Android app.

Another adventure underway.

When I went to my "Developer Console" at developer.android.com, with the goal of taking my first version of the "Oregon Feelings" app and "publishing it" to the "beta channel".

Monday, October 3, 2016

Your AdSense account has been disapproved!

Well, two rounds of applying for an AdSense account and two rounds of denials.  This is kind of a pain in the butt!  All we want is to be able to monetize our Android apps, and the only way that we can find to get an AdSense account is to submit the URL of a website that is worthy of serving up AdSense advertisements, which seems like a totally parallel track to having advertisements and in-app purchases in our Android apps.

Here's what the Google AdSense rejection email looks like:




And, here's what our current Blogger Earnings page looks like after the second round of "disapproval":



So, what's will be our next attempt?  Well, how about submitting the URL of one of our Android apps in the Play Store?

We figure that submitting this URL will be the only real accurate way to show the AdSense gatekeepers the property that we actually spend our time coding, rather than some arbitrary website on which we really have no interest in displaying their ads anyway.

We want to display ads in our Android apps!  We want to offer in-app purchases in our Android apps!

We'll let you know how this new direction in gaining AdSense approval turns out.

Thursday, September 29, 2016

Your AdSense account is awaiting approval.

Sorry, I've been living with the,  "Your AdSense account is awaiting approval." in my Blogger Earnings page for quite a while now, and I thought that, hey, there is no one at Blogger or AdSense to talk to about this issue, so why not do a blog entry on it.

So, why does it take soooooo long for a very simple approval to take place?

Is it because of the desire to not allow AdSense users to host advertisements on "bad pages" (e.g., porn or hate sites, or maybe sites that host only "stolen" content)?

Or is there some other deep seated, secret evaluation process by which the guardians of good and proper at AdSense use to evaluate requests to have an AdSense account for the purpose of publishing advertisements on our websites?

Right now, the evaluation and approval process is largely black-box to outsiders like me, so all I can do is ask random questions, like, "Why are you being such a tool, AdSense?".

If there was a hint of transparency in the evaluation process that maybe showed a few of the following items, then at least I could understand where I am in the black-hole of AdSense approval:

  • How many times have I submitted for AdSense approval
  • What was the reason for lack of approval each time, with specifics on exactly what was wrong with the request for approval
    • Bad content
    • Content that offends the palate
    • Stolen content
    • Just a darn shitty site, too bad to host paid advertising
  • How many other folks are currently in the AdSense approval queue
  • How many AdSense reviewers are currently working on the AdSense approval queue
    • Or, how far behind is the AdSense approval robot in it's approval processing
  • How many wanna-be AdSense hosting site authors are also writing blogs about the very crappy AdSense review and evaluation process
  • Where (numerically or percentage-wise) does my AdSense approval request stand in the current approval queue
  • In which part of the world does the reviewer reside (just a to satisfy my morbid curiosity)
There is really no solid reason for such a lack of transparency of the AdSense approval process.  Such a black-box approach really makes me wonder why AdSense is so insecure about their process that they have to obfuscate the evaluation and approval process.

Also, it is so rude to not offer real customer support for AdSense.  There are no publicly published email or telephone support numbers for AdSense.  What?!!!  How Rude!!!

When AdSense is the gateway for enabling commerce in your Android apps, and the AdSense approval process is to obfuscated and lengthy, how is this benefiting Google?  

Maybe Google feels that they already have plenty of places to host advertisements, so they have chosen to put the AdSense evaluation and approval process in place to act as a gating factor.  I.e., "if we make it confusing and a lengthy process, then we'll be able to accurately predict our ad growth very accurately"?

Oh well, I'll probably add to this AdSense rant as the evaluation process stretches from two to three weeks, or maybe even longer.

Thanks Google/AdSense!  What ever happened to "Do No Evil"?





Tuesday, September 27, 2016

Protecting our digital assets

I'm facing a dilemma regarding using our digital assets in android, iOS, and web apps.

Several of our products use high resolution digital assets to which we are the legal copyright holder.  In some cases, we have been granted copyright ownership by the original owners, but in most cases, our digital assets are original works that we have created and which we cherish and hold dear to our hearts.

Now, why would that that cause us a dilemma?  Well, primarily because when we use one or more of these digital assets in one or more of our apps, we have the following, often conflicting goals:

  • We want to use high resolution versions of our digital assets to enhance the viewer's experience, 
  • We want to use a resolution which ensures that the assets are not too large, which will cause under-powered phones, tablets, and other computing devices to evoke a user experience that is sub-optimal
  • We want to protect our digital assets from being "snatched and re-purposed" for use in other vendor's products or advertising or simply for people's viewing pleasure outside of our intended viewing technologies
So, say that we want to provide a display and consumption model which attempts to compromise between these goals.  What are some of our options?
  • Subtly watermark the digital assets
  • Include a copyright statement visibly embedded into a corner of each digital asset
  • Degrade the digital asset quality so that they are not attractive enough for others to snatch
  • Just say, what the heck, put our best digital assets in our products and don't worry about it
  • Encrypt the digital assets so that they are not usable by asset snatchers, only decrypting each asset during the period of time that the asset is being displayed
While developing a set of apps that display a lot of digital photos, we have found that a practical size for our digital photos is about 6M bytes, either as a 2000 x 3000 or a 3000 x 2000 image.  When storing these images as Resources, that's the size goal that we shoot for.  This size allows us to show nice resolutions in our mobile apps, while not putting too much strain on the graphics systems involved.

We also support the display in our apps of user-submitted photos.  We have considered a couple of options here:

  • Limit the size of the photos that the user submits to 6M bytes
  • Allow the user to submit any size of image.  If the image is smaller than 6M bytes, we just use it as is.  However, if the image is larger than 6M bytes, then our code will use the android graphics engine to re-sample the images so that a standard 6M byte image is displayed.


More thoughts and fleshing-out to follow...




Saturday, September 17, 2016

Stuff we learned about creating a graphically intensive Android app...

To be fleshed out soon:


  • long-standing and recognized bug in destroying bitmaps
  • cycle page viewer nutty numbering
  • using a fragment within an activity to display our graphics
  • maximum usable/renderable size of jpeg images
  • just a small fraction of the goodies that we experienced, to be built-out and expanded upon very soon




Publishing apps - why do they make it so frustrating?

I'm currently going thru the process of publishing a series of Android apps that we've been developing for awhile.  We have decided to monetize the apps with:


  • InApp Purchases
    • consumeable features
    • subscription based features
  • AdMob banner ads
    • small (50x300) banner ads at the bottom of each page
We also have extensive experience publishing apps to the Windows Phone Store and thru the Windows 8 Store, both of which have since been combined and renamed.

So, once upon a time (before I had published my first app), I had thought that, "hey, I'll just submit my app to the store and the bucks will start rolling in."  In retrospect, that has not yet been the case, but I'm still working on getting the right apps to the right users.  In the process, I have seen some similar frustrating factors that enter into the publishing (and maintenance) of each app that I naively did not expect to be a part of the publishing process.





Thursday, September 15, 2016

How I got AdSense working in my Android App

Why do I need AdSense in my Android app?  Two reasons:
  • I want to see how rich I can get by putting in tiny advertisements in my Android apps via the Google AdMob advertising aggregation and serving solution.
  • I want to offer InAppPurchases in my Android apps.
Both of these require that I have a Google AdSense account that is tied to my bank account.  Sorry Google, but this should be totally easy for even a brain-dead programmer, or even a 6-year old whiz kid programmer.  I'm somewhere in between the two extremes and I am finding that this process is neither straight forward, nor particularly easy.  Thus this blog post.

This is a work in progress...  This paragraph will disappear when I have fully documented the somewhat lengthy and frustrating experience of traversing the various Google products and services required to enable a first-time Android publisher to incorporate AdMob advertisements into their Android app.
  1. Create your Android app.
  2. Download the AdMob SDK
  3. So, what the heck is Firebase and why do I need it?  Well, it's another opportunity for Google to do a Freemium hack of their own on all of us Android developers...  From what I have gleaned so far, this is another company that Google has Gobbled because they were offering a cool set of features that someone at Google felt that they could ride to the bank.  Here's the lowdown on Firebase from Wikipedia...it was actually two companies that Google Gobbled; Envolve and Divshot.
    • Anyway, why is Firebase relevant for you when you need to get the Google Mobile Ads SDK? Well, probably because Firebase was not getting enough traffic from Android developers and now, since you have to get a Firebase account to get the Ads SDK, you get to take the time to figure out what the heck you need to do with Firebase to be able to download and use the Ad SDK.
      • Answer ==> nothing that I can see so far, but I may change this as I learn more.
  4. Visit GitHub and get Google Play samples for sample apps that show you how to integrate the AdMob ads and InApp Purchases into your Android app.
  5. If you need help, you can visit  the Google Mobile Ads SDK Developers forum
  6. Incorporate the AdMob SDK into your Android App.  While you are testing, make sure that you do NOT use your real AdSense account.  There is a not-so-subtle threat made by the AdSense folks that if you do use your real AdSense account while testing and accidentally click-thru an advertisement, they will know, and they will deactivate your AdSense account.  Since it is such a pain to get your AdSense account in the first place, you should probably heed their severe warnings and make sure to use only the AdSense test account while you are developing and testing your Android app.
  7. Well now, one way to qualify to get an AdSense account is to Get yourself a Google Blogger account and start publishing blog posts like this one.
  8. Use your Google Blogger URL as the website that you want to associate with an AdSense account
  9. Visit the AdSense website and create a "project"
  10. On the AdSense website, associate your Android developer email address with a new AdSense account
  11. And, associate your Google Blogger URL with the new AdSense account
  12. Now, we get to a sort of catch-22 area...
    • The reason that I started this blog was because the AdSense website pointed out that "one way" to have a website that qualified for an AdSense account was to start a personal Blogger blog, so hey, why not.  Here's the link from the AdSense support site...
    • I created a Blogger account and figured that it would be kinda neat to start a blog about interesting Android tips and tricks that I've picked up over the past few years.  So far, so good. You are looking at the first blog post in this new blog.
    • So, silly me, I figured now that I have a blog post that I've posted, I should be able to ad an AdSense "gadget" to my blog.  I can see the AdSense gadget.  I can click on it, but then I get a nice little error message that says that I need to set up an AdSense account before I can add the AdSense gadget.
    • No problemo.  I click on the "Earnings" tab on the left of my blog management panel, and am promptly told, "Your blog doesn't currently qualify for AdSense."  It does not tell me why, other than giving me a this link to the qualification criteria for a Blogger blog to use AdSense.  Hmmm...now it tells me that I need to have had my Blogger account for at least 6 months.  Is that bait and switch, or what?
    • I started this blog via Blogger because the AdSense said that was an expedient way to qualify for an AdSense account, but once I have created the Blogger blog, now I have to wait for 6 months for the account to become active?  That's just silly!!!
  13. To see if I could jump-start the AdSense evaluation process, I tried another experiment.  I decided to simply sign up for an AdSense account for one of my websites.  As sort of a placeholder, I keep a very basic website for one of my software development consulting companies, Friller.  So, I attempted to use the Friller website as the website on which I proposed to serve up AdMob advertisements.
    • Upon submission of the Friller website to the AdSense evaluation process, I got a message telling me that they would evaluate my submission and get back to me.
    • I got a denial email within 12 hours, with a pointer (link) to the possible reasons that might be the justification for said denial.  What came across was the basic message, "Hey dude, are you wacked out?  Your website is totally boring and content-free, so why would advertisers want to advertise on Friller.com?".
    • Fair enough.  I never really wanted to serve up ads on Friller, but it was worth the experiment to see what the lords of content would have to say.
  14. Next experiment: use the Blogger Settings/Publishing/Blog Address configuration feature to redirect this blog to one of my domain names, www.outathere.com, which should bypass the 6-month AdSense delay period and should also get me in the door to having an approved website (because that's what the AdSense site says about Blogger).
    • So, I hopped over to Godaddy and reconfigured one of my many parked domain names to point to the CNAMEs that Blogger has assigned to this blog.
    • Godaddy's interface for this wasn't too bad and they had a support article on exactly how to do this, and the Blogger feature was also easy to read and understand, so I now have www.outathere.com pointed to this website blog and it works.
    • One side note -- make darn sure that you ensure that you specify only the top level of your domain name (i.e., make sure it starts with www. (e.g. www.outathere.com, rather than outathere.com)).  Otherwise, the AdSense application engine is supposed to automatically reject your submission.
    • Once I verified that this redirection was up and running, I resubmitted my AdSense account request, but now pointing to www.outathere.com.  And the good news was that my application was not automatically rejected.
    • Now, I'm just waiting for the AdSense content review lords to bless or trash my latest request.
    • It's now day 3 of waiting for the content review lords...looking at the lost revenue from not being able to use AdSense to enable InApp Purchases in my Android Apps...
    • Ok Google!!!, it took 5 days, but it looks like I can now sign up for AdSense from my Blogger account.  I'll attempt this now and update accordingly.
    • Interesting stuff (otherwise known as a cluster fck).  Here's what happened next.
      • My blog page said that my AdSense account was approved to work with my blog page, with a "click here" to configure my AdSense account.
      • I clicked on "click here", was redirected to the AdSense account request page, which was pre-filled with my www.outathere.com submission request.
      • I clicked on the "submit" button and was told, "you are approved", and was presented with another button to get back to my blog page on blogger.
      • Upon clicking on the "go back to blogger" button, I was redirected back to my blog page, and landed on the following page:
      • As you can see, it says that "your AdSense account is awaiting approval".  Go figure, I thought that the AdSense site already approved us.  Guess I'll wait awhile to see if this is a synchronization issue between various Google properties.
      • Here's what the Blogger "Earnings" screen looks like when I attempt to configure the ads for my blog and "Save" my configuration options:
      • Also, if I go back to the AdSense website, here's what I'm now told:
      • Progress is being made, but there's definitely a delay between even small amounts of progress on Google's part :(.
      • Started another "day counter" to record how long it's taking AdSense to "re-approve" my request for an AdSense account.  It's really hard to understand how I can be "approved", but upon attempting to finalize my "approval", I get stuck back into the "waiting for approval" queue?  Wish there was a whole lot more transparency at AdSense in this regard.
      • Day Counter : 9 days, AND COUNTING, so far for the second round of approvals, what a PAIN!
      • So, on the 8th day of waiting (see above bullet for total time spent waiting in this cycle of hurry-up-and-wait, I got a slightly new screen in my Blogger Earnings screen...note that the Earnings screen has changed behavior, at least for about 5 minutes, as follows:

      • Next, I navigated over to AdSense, and got the standard "not yet" error message from AdSense.  So, I navigated back to my Blogger Earnings page and now the page has changed back to the "Your AdSense account is awaiting approval.  NICE!!!
      • I'm really beginning to wonder if Blogger and/or AdSense even knows the meaning of "Quality Assurance".  Do you folks have a QA team?  Do you care about the really crumby user experience that you are putting your users through?  Or are you simply clueless robots?  By the way, I have found absolutely no way to communicate with the AdSense folks (and yes, by communicate, I do mean that I'd like to either talk on the phone or via email with you, a bi-directional communication link that has effective participants at both ends of the communication channel).  Oops, that doesn't currently exists, silly me!

      • More to come as I come up for air...


Our Privacy Policy follows:
This blog does not share personal information with third parties nor do we store any information about your visit to this blog other than to analyze and optimize your content and reading experience through the use of cookies. You can turn off the use of cookies at anytime by changing your specific browser settings. We are not responsible for republished content from this blog on other blogs or websites without our permission. This privacy policy is subject to change without notice and was last updated on October 5th, 2016. If you have any questions feel free to contact me directly here: blogs@friller.com.