Ixxから正しい方向へのポインターを使用して、android:debuggable = "true"を設定し、コマンドラインを使用してビルドとデプロイを行うことになりました。次に、実行中のプロセスにアタッチしてデバッグします。
私のアプリケーションは、androidSDK / tools / ant/build.xmlをインポートするantbuild.xmlファイルとサポートするbuild.propertiesファイルを使用してコマンドラインでビルドするように設定されています。android:debuggable = "true"を設定してから「antrelease」を実行すると、ビルドプロセスでデバッグ可能なapkが作成され、リリースキーで署名されることがわかりました。
この場合に設定できるset-debuggableというターゲットをbuild.xmlファイルに作成しました
<target name="set-debuggable" description="sets internal named property">
<echo>Setting internal named property...</echo>
<property name="set.debuggable" value="true" />
</target>
次に、ビルド前のターゲットに追加しました
<if>
<condition>
<isset property="set.debuggable"/>
</condition>
<then>
<replaceregexp
file="AndroidManifest.xml"
match="(android:debuggable=").*(")"
replace="\1true\2"/>
</then>
<else>
<replaceregexp
file="AndroidManifest.xml"
match="(android:debuggable=").*(")"
replace="\1false\2"/>
</else>
</if>
これにより、「antset-debuggablerelease」を使用したときにリリースキーで署名されたデバッグ可能なapkが作成されます。次に、「adb install -r myApp-release.apk」を使用して、新しいビルドを再インストールします。次に、実行中のアプリケーションを起動して接続し、アプリ内購入を通じてデバッグできます。
IntelliJ IdeaとEclipseの両方が、システムのどこかで自己署名されたデバッグキーを使用して、IDEからデバッグapkをビルドおよびデプロイしているように見えます。
後から考えると、IDEが作成したデバッグキーをリリースキーに置き換えて、ビルドにそのキーで署名させようとした(そしてキーを使用するためのパスワードを見つけようとした)可能性がありますが、上記のビルドプロセスにはほとんど時間がかかりませんでしたセットアップして使用を開始する時間。誰かがこの方向に進んでそれが機能するようになったら、私の答えにコメントを追加してください。