3

まだ公開されていないアプリ内でAndroidマーケティングライセンスを使用しようとしています。

ServerManagedPolicyを使用してLVLライブラリをインストールして統合しました。

問題は、例外なく、ライセンスチェックの実行時にLicenseCheckerCallback.dontAllowが応答「RETRY」で呼び出されることです。

私はこの主題に関する多くの投稿を読み、そして...

  • マニフェストファイルには、CHECK_LICENSE権限が含まれています
  • 開発者アカウントにアップロードしたものとまったく同じ.apkファイルを実行しています
  • 開発者アカウントにテストユーザーを追加しました
  • 応答は、2.2を実行しているエミュレーターと2.3を実行しているデバイスで同じです。
  • テストユーザーまたは開発者ユーザーのどちらとしてログインしても、応答は同じです。
  • 開発者アカウントでLICENSEDまたはNOT_LICENCEDを選択しても、応答は同じです。
  • エミュレータとデバイスの両方が常にインターネットに接続されていますが、接続がない場合の応答は実際には同じです。
  • コードは現時点では難読化されていません

私のコードは基本的にドキュメントによって提供されるものです...

String deviceId = Settings.Secure.getString(getContentResolver(),Settings.Secure.ANDROID_ID);

mLicenseCheckerCallback = new MyLicenseCheckerCallback();
mChecker = new LicenseChecker(
            this, new ServerManagedPolicy(this,
                    new AESObfuscator(SALT, getPackageName(), deviceId)),
            BASE64_PUBLIC_KEY);

mChecker.checkAccess(mLicenseCheckerCallback);

これを機能させるために残したオプションは何ですか?

4

1 に答える 1

3

答えはここにあることが判明しました... Android Context.bindService は常に false を返し、 ServiceConnection オブジェクトは決してトリガーされません

ライセンス チェックはタブ ページから呼び出されていたので、コードは...

String deviceId = Settings.Secure.getString(getContentResolver(),Settings.Secure.ANDROID_ID);

mLicenseCheckerCallback = new MyLicenseCheckerCallback();
mChecker = new LicenseChecker(
        getApplicationContext(), new ServerManagedPolicy(this,
                new AESObfuscator(SALT, getPackageName(), deviceId)),
        BASE64_PUBLIC_KEY);

mChecker.checkAccess(mLicenseCheckerCallback);
于 2012-04-16T14:27:24.113 に答える