2012-02-17 8 views
6

私は少しのチュートリアルや、inn-app-purchaseで自分のアプリケーションで広告を削除する方法を探していますか? 私は自分のアプリにadmobの広告をいくつか入れますが、少額の寄付をしたときに広告を無効にすることもできます。あなたはこれを行うためにステップの説明で少しのステップを見つけることができる側面やチュートリアルを知っていますか? または、私のアプリケーションの2つのバージョンを公開する必要がありますか? 1つは広告があり、もう1つは広告がないのですか?アプリ内購入で広告を削除する

答えて

5

SharedPreferencesメソッドを使用しないでください。ユーザーがアプリデータを消去するか、アプリをアンインストール/再インストールすると、広告なしステータスが失われるためです。ウェブデータベースの顧客データを更新することにより、広告の無料版を購入してから無効にしたとして

  1. あなたのアプリケーションは、Webベースのログインまたは許可のいずれかの種類を持っている場合は、次のことができフラグユーザー:

    アイデアのカップルログインと検証後のコード内の広告これには、ユーザーを新しいデバイスに追いかけるという追加の利点があります。

  2. 一意のデバイスIDを取得してWebサーバーデータベースに格納するには、いくつかの方法のいずれかを使用します。起動時に、DBにクエリを送信して、デバイスが広告なしであるかどうかを確認します。 Android Unique Device IDを参照してください。しかし、これは特定のデバイスでしか機能しません。

2つのアプリのアプローチは、仕事をやり遂げるのに十分簡単です。 :)

+0

は良いアイデアのように聞こえるが、私は(ユーザーの認証やログインを持っていけませんそれが必要ないので)。市場はこの情報を扱うことを約束しますか?私は、ユーザーがinn-app-stuffを購入したかどうかを市場が知っていると思う。それを市場から確認することはできませんか? – Informatic0re

+2

ドキュメント[こちら](http://developer.android.com/guide/market/billing/billing_integrate.html)の「トランザクション情報の復元」を参照してください。 要約: RESTORE_TRANSACTIONSリクエスト... ...詳細なトランザクション情報が含まれています。トランザクション情報は、署名されたJSON文字列(暗号化されていない)に格納されます。 'バンドルリクエスト= makeRequestBundle(" RESTORE_TRANSACTIONS "); request.putLong(REQUEST_NONCE、mNonce); バンドルレスポンス= mService.sendBillingRequest(request); //このレスポンスで何かをしてください。 – Maz

+1

小さな修正:ユーザーがアプリをアンインストールしてインストールすると、 'SharedPreference'データは削除されません。ユーザーがアプリのアンインストールページで意図的にアプリデータを消去したり、デバイスをフォーマットしたりすると** **のみ削除されます。しかし、それ以外の場合、あなたの答えは正しいです。 –

1

このプレゼンテーションは例を説明するもので、githubのソースコードへのリンクが含まれています。 http://gotocon.com/dl/2011/GeekNights/Tjen_penge_p%C3%A5_Android_ARH.pdf 購入したアップグレードをsharedpreferenceに保存します。

しかし、私はまだ出て働き、より安全で堅牢なソリューションを探していますユースケースは、ここで説明: http://vlingo-en.custhelp.com/app/answers/detail/a_id/1785/~/moving-in-app-purchase-(ad-removal)-to-new-android-phone/p/180

+2

vlingo-enのリンクを修正してください。それは壊れていた –