私は Embarcadero XE6 を持っていますが、Delphi XE6 しか使用していません。アプリの Delphi プロジェクトを実行すると正しくコンパイルされますが、Delphi がこのアプリをデバイス SDK ADV または物理デバイスに直接インストールしようとすると、次のエラーが発生します。
プロセスを作成できません: '' をインストールできません。失敗 [INSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES]
そこで、バッチ ファイルを作成して、アプリが証明書を保持し、この方法でのみモバイル デバイスに手動でインストールできるようにしました。
バッチ ファイルには次のものが含まれます。
cd\
D:
cd Program Files
cd Java
cd jdk1.7.0_25
cd bin
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my-release-key.keystore -storepass android D:\DelphiPrograms\App01\Android\Debug\MyApp\bin\MyApp.apk androiddebugkey
cd\
D:
cd Users
cd Public
cd Documents
cd Embarcadero
cd Studio
cd 14.0
cd PlatformSDKs
cd adt-bundle-windows-x86-20131030
cd sdk
cd platform-tools
adb -s emulator-5554 install -r D:\DelphiPrograms\App01\Android\Debug\MyApp\bin\MyApp.apk
pause
しかし、アプリを変更するたびに、このバッチ ファイルを実行する必要があります。Delphi は、アプリをデバイスに自動的にインストールします。
注: Embarcadero XE6 をインストールしたときに、ZipAlign.exe ファイルが終了せず、zipalign.bat が空だったので、インターネットから ZipAlign.exe をコピーし、インターネットからバッチ ファイル コマンドもコピーしました。
私のファイル ZipAllign.bat には、次のコマンドラインが含まれています。
@echo off
REM Batch file to recursively zip align *.apk files in a directory
REM and its sub-directories. This is significantly easier and faster
REM than manually zip aligning them.
@echo Zip aligning now...
for /R %%X in (*.apk) do zipalign 4 "%%X" "%%~dpX%%~nX.new"
@echo Replacing non-aligned files with zip aligned files...
for /R %%X in (*.new) do move /Y "%%X" "%%~dpX%%~nX.apk"
@echo Zip aligning done, press any key to exit
pause
しかし、エラーが続き、アプリを認証するために作成したバッチ ファイルを実行することなく、SDK デバイス用の Delphi でアプリを直接実行することはできません。
ZipAllign.bat ファイルは完全ですか、それともいくつかのコマンド ラインがありませんか?