1. ホーム
  2. android

[解決済み] 一定期間で終了するAndroidの試用版アプリケーションを作成する

2022-11-15 06:16:24

質問

有料アプリとして市場に出したいアプリケーションがあります。他のバージョンとして、たとえば 5 日間の時間制限のあるトライアル版を用意したいのですが。

これを行うにはどうしたらよいでしょうか。

どのように解決するのですか?

現在、多くの開発者は以下の3つのテクニックのいずれかを使ってこれを実現しています。

最初のアプローチは簡単に回避できます。アプリを最初に実行したときに、日付/時刻をファイル、データベース、または共有設定に保存し、その後アプリを実行するたびに試用期間が終了したかどうかを確認します。 これは、アンインストールと再インストールによってユーザーが別の試用期間を利用できるようになるため、簡単に回避できます。

2 番目の方法は回避するのが難しいですが、それでも回避可能です。 ハードコードされた時限爆弾を使用します。 基本的にこの方法では、試用期間の終了日をハードコードし、アプリをダウンロードして使用するすべてのユーザーが同時にアプリの使用を停止します。 私は、簡単に実装できることと、3番目の手法のような手間をかけたくないという理由から、この方法を使用しています。 ユーザーは携帯電話の日付を手動で変更することでこれを回避することができますが、ほとんどのユーザーはそのようなことをする手間をかけることはありません。

3つ目の方法は、本当にやりたいことを実現できる、私が聞いたことのある唯一の方法です。 サーバーをセットアップする必要があり、アプリケーションが起動するたびに、アプリケーションから 電話の一意の識別子 をサーバーに送信します。 サーバーにその電話番号のエントリがない場合は、新しいエントリを作成し、時間を記録します。 サーバーがその電話IDのエントリを持っている場合、試用期間が終了しているかどうかを簡単にチェックします。 そして、試用期間終了のチェック結果をアプリケーションに返します。 この方法は回避できないはずですが、Web サーバーなどをセットアップする必要があります。

これらのチェックを onCreate で行うのは常にグッドプラクティスです。 有効期限が終了した場合、AlertDialogをポップアップし、その中に マーケットリンク をポップアップします。 OK"]ボタンだけを含み、ユーザーが[OK"]をクリックしたら、アクティビティを終了するために[finish()"]を呼び出すようにします。