This is not a programming question per se but a question that may be relevant to all future Android developers.
I am in the market for an Android developer phone. I can buy it used on eBay, or I can buy it new on the Android Market.
All nice and dandy but in order what the Android market has to offer, I have to first register, which requires signing the Android Market Developer Distribution Agreement.
Well, I know that many developers signed that agreement and stayed alive, but before signing anything I prefer to read what I am about to sign. Unfortunately, certain information that is needed to be understood in order to sign the agreement can be accessed only after you sign the agreement...
For example, how do I know which are the "authorized payment processors" mentioned in clause 1.2?
Also, it sounds strange to me that in order to just see what developer phones are available (and their specs) I first have to register and pay the $25 registration fee. It will take at least 6 months before I will be ready to place anything on the Android market, so why should I register now?
Any idea whether to find these 2 pieces of information without having to register so early in the process?
Two things, first the "Authorized Payment Processors" are defined just above that as:
Payment Processor(s): Any party authorized by Google to provide payment processing services that enable Developers with optional Payment Accounts to charge Device users for Products distributed via the Market.Blockquote
The only one currently is Google Checkout, but I have heard that they are working with PayPal to get them involved as well.
Secondly, you have to log in to buy the phones because they are only available to Android Devs. The ones on the list are the "Android Dev Phone 2" (which is basically a MyTouch 3G) for $399.00 and the Nexus One for $529.00. You can look those up and check the specs on them. They are both unlocked and the Nexus One has an unlocked bootloader.
You do not need to register now. Just when you are ready to release your app to the Market.
Also, for development you can get any Android phone out there. Preferably many phones with different physical characteristics and various sw versions.
Btw, the $25 fee is a good thing, because Google records your credit card no, so malicious devs keep themselves away.
Related
How does an Android device identify an app as "market" or "non-market"?
The situation is that I've an app I want to make available to a set of customers, rather than the entire world, but don't want them to have to go through the extra steps of allowing their device to install non-market apps. I'd like to distribute it through a company website behind a login wall without losing the ease of installation for a play app.
The private channel, designed for companies to distribute internally, isn't quite what I had in mind. I'm distributing to clients of my company, each of which has many employees, via a per-client website.
I don't have a problem with somehow presenting the app to Google to get it signed, sealed, etc. "Why not just use the market" is a reasonable question, and I'm considering that option too.
I'd also rather not violate Google's terms of service in the process.
Clarification:
I appreciate the answers so far. I am asking about the mechanism the Android OS uses to determine if something is a market app.
This should give you the right information:
PackageManager pm = getPackageManager();
String installationSource = pm.getInstallerPackageName(getPackageName());
A result com.google.android.feedback indicates, that the app was installed using Google Play.
Hope this helps ... Cheers!
p.s. this related link looks quite interesting
A "market" app is an app that you download from a trusted marketplace (usually Google Play but some devices like the Kindle Fire allow downloads from the Amazon market), so in your case you have to tell your users to allow installation of non-market apps.
What about showing the login screen on the app instead of the website? In this way you could publish it easily on Google Play. This is how
similar apps do (like this one : https://play.google.com/store/apps/details?id=net.intermedia.securisyncinternal.ui)
I have a situation that I have not seen addressed elsewhere, so I'd like to ask folks for ideas. Here's what's up:
I sell a relatively expensive (US$25) app that I have sold for 10 years in various forms on different portable platforms. In general it's pretty vertical-market oriented (astronomers, ham radio operators) but in some cases is of general interest and has sold pretty steadily over the whole time it's been around. I have an Android version ready to publish but am not sure the best route to take.
The issues that are troublesome for me are that it must be possible to download a free, time-limited but full-featured version for evaluation, and that I need to be able to sell it to previous customers at half-price (just a long-standing policy of mine.)
Note that I am already set up to sell from my own website - have been doing it with other versions of the software for years, and the app is already set up to run in "trial mode" until a registration code is entered.
I have been assuming that I would publish it on the Android Market as a free app, and add code to it to look for an "unlock key" app that I would publish there as well. The idea being that a person could download and test the app, and if they chose to purchase it could either buy the unlock key via the market, or could go to my web site and purchase a registration code, allowing a path for my "customer loyalty" discount.
Unfortunately, I'm pretty sure this violates section 3.3 of the Developer Distribution Agreement: "All fees received by Developers for Products distributed via the Market must be processed by the Market's Payment Processor."
I have a couple of ideas, but I'd really like to hear some other opinions first. Sorry for the length - it's just a long question.
(Oh, and FYI, there is already a published iOS version of this app, and none of this is at all possible for it, and I think it's awful.)
You could get them to buy the app at full price and then send the discount back to them - like a cash-back scheme. It's not very efficient though.
You can use in-app billing to process the purchase. That way you won't violate any agreement.
You can publish more than one APK in the market, with different prices, and validate the install upon first run with a code you send them.
New to Android before I port my application to this platform I wanted to know the lay of the land as far as restricted API's by each carrier.
With J2ME (Nextel aside) there was very little you could do (except pony up some serious cash) to get the carrier to allow you to access restricted API's.
With Blackberry things got much better, other than Verizon locking down GPS, you pay the developer fee of $99 and you can sign your apps.
Now Android, do we have free reign, or are the handcuffs put on us here????
There are no restrictions with carriers in Android platform. You can use the functionality provided by Android SDK in all phones available. You only need to take care of the version of the OS each device is based on.
To upload an application in the Android Maeket you need to register as a developer. You pay a small one-time amount for this. You don't need a paid certificate to sign your application. However, there are some locations that you are only allowed to upload free applications. See this question for details.
I am about to finish my Android application. I would like to provide lite version and more complete paid pro version. Unfortunately, Google does not allow Australian developers to sell applications and I don't have any friends in US or UK.
Does anyone know of a person/company who would publish my pro application on my behalf? Google search did not bring up any results.
Thanks.
Do NOT use androidpublisher.com. They publish many pirated apps and flood the market with absolutely horrible applications. As a developer, "Android Publisher" is one of the last things you want associated with your application.
Good news! The Android Market opened up to Australian developers on September 30, 2010.
See this link:
http://android-developers.blogspot.com/2010/09/more-countries-more-sellers-more-buyers.html
Also, don't hesitate to deploy to other markets, such as the Amazon Appstore and SlideMe.
For any other countries that are still left out of selling on the Android Market, you can link from your free app to another market that does allow you to sell apps. It's not as ideal, but it will get you into the game.
Well, I have found Android Publisher who would be willing to publish paid applications on behalf of developers who can not publish themselves due to Google's senseless restrictions (so much for being open).
Android Publisher charge 19% service fees for publication services. This is additional to the 30% charge that Google charges to process paid applications. For example, if an application costs $0.99, Google would charge $0.30, Android Publisher would charge $0.19 and the developer keeps $0.50.
Whilst this isn't ideal I feel this is better then publishing on alternative market places as Android Market provides seamless experience and obviously there is much more exposure through Android Market.
In case someone else is interested the contact name is David and email address is: support#androidpublisher.com
As time passes I will keep updating this thread/question (unless the community doesn't want me to!) with my experience dealing with Android Publisher as it may help other developers who don't live in Google approved countries.
I've found company that publishes games. I'm not sure I like their license terms though.
http://hyperbees.com/about/
Edit: Android now supports in-app billing!
Original question:
It looks like Android won't natively support in-app purchases for a while, and when it does there might be a huge user base with devices that don't support them.
What's the best way to implement iPhone-like (additional content or services) in-app purchases in Android using the Android Market if possible?
The solution should consider in particular:
For all kinds of in-app purchases: Android Market's 24-hour cancellation policy
For consumables/non-consumables: storage of additional content (ie: use precious application memory to avoid piracy, or use SD card to avoid bloating application memory)
Thanks!
This has changed as of today! There is now an example on the Android Developer site here: https://developer.android.com/google/play/billing/billing_overview
You can create a premium key application, that will have a key. How you expose that it's your deal ( or you can just check if PremiumKey activity exist ). From the main app you just check for your key and if it's exist enable premium option )
If you're talking about buying OTHER apps from yours - build your list with market url pointed to the other apps ( market:// )
It is against the Android Market Developer Distribution Agreement to take in-app payment:
3.3 ... All fees received by Developers for Products distributed via the Market must be processed by the Market’s Payment Processor.
Looks like Paypal has launched a library for accepting in-app payments. See here. Not sure if this system violates the T&C though.
You say that Android Market doesn't support in-app purchases, and then ask how you can implement in-app purchases using Android Market?(!)
Anyway, if and when they do support it, I imagine it could be distributed as an update to the Android Market application itself, so most users would be able to use the functionality. I believe the Market app updates itself automatically.
Possibly the Market would accept an Intent to trigger a payment via the usual on-device mechanism and return your app (or more likely your server) a callback.
There is also another in-app payment platform for Android applications called MoVend (www.movend.com). I have checked it out and there are several benefits using it compared to the other 2 mentioned earlier:
Many payment channels : Operator Billing for more than 38 countries, PayPal and virtual credits.
Many distribution channels: They work with developers to distribute their applications through the various distribution channels like Operator AppStores , OEMs and Android applications website. Marketing is something we all need. They are also invested by Singapore Telecommunications who has a strong presence in South East Asia.
They provide a sales analytics for you to track, trace and monitor the performance of your apps. Since they are available worldwide, you can always tailor your applications to the different geography area.
I am trying to build Android applications and monetizing is important.
Reply this thread so we can discuss how we can monetize our Android applications.
Here's another free licensing and payments system. The nice thing about this one is that it allows you to offer your app in any app store.
You can find more details # http://www.cloud4apps.com/
Check out http://mobpaynet.com, they are doing something like this. Not sure if it violates terms or not, but I will probably check it out.
For implementing in-app purchases in Air applications you may use third-party libs (Adobe AIR does not support In App Purchases for any platforms out of the box). For example, developed by Milkman Games (unfortunately, they are not free)