0

Android向けの開発を始めたばかりで、GooglePlayデベロッパーのライセンスを持っていません。私のアプリケーションでは、APK拡張ファイルを使用する必要があります。

play_apk_expansionに含まれているdownloader_sampleのコードを適用しようとしましたが、このメソッドによってInvalidKeySpecExceptionがスローされます

private static PublicKey generatePublicKey(String encodedPublicKey) {
    try {
        byte[] decodedKey = Base64.decode(encodedPublicKey);
        KeyFactory keyFactory = KeyFactory.getInstance(KEY_FACTORY_ALGORITHM);
        return keyFactory.generatePublic(new X509EncodedKeySpec(decodedKey));
    } catch (NoSuchAlgorithmException e) {
        // This won't happen in an Android-compatible environment.
        throw new RuntimeException(e);
    } catch (Base64DecoderException e) {
        Log.e(TAG, "Could not decode from Base64.");
        throw new IllegalArgumentException(e);
    } catch (InvalidKeySpecException e) {
        Log.e(TAG, "Invalid key specification.");
        throw new IllegalArgumentException(e);
    }
}

また、私は持っています

public class SampleDownloaderService extends DownloaderService {
// You must use the public key belonging to your publisher account
public static final String BASE64_PUBLIC_KEY = "MyLVLKey";
// You should also modify this salt
public static final byte[] SALT = new byte[] { 1, 42, -12, -1, 54, 98,
        -100, -12, 43, 2, -8, -4, 9, 5, -106, -107, -33, 45, -1, 84
};

実際の発行者アカウントなしでアプリケーションをテストするにはどうすればよいですか?

4

1 に答える 1

1

APK 拡張プロジェクトのサンプル コードには、ダウンローダー関数を呼び出す前に、ファイルが適切に配置されているかどうかの特定のチェックがあります。ファイルがSDカードにあることを確認し、直接アクセスしてください。

ビルトイン ダウンローダーをそのまま使用するには、ファイルが Google Play でホストされているため、パブリッシャー アカウントが必要です。マイナーな変更により、ダウンローダを使用して、ローカル サーバーなど、好きな場所からダウンロードできます。

于 2012-05-08T23:03:25.137 に答える