Linuxヘッドレスサーバーでapkをコンパイルしてパッケージ化しようとしています。これが私がこれまでにしたことです:
- 私はandroidsdkをインストールしました、すべて大丈夫です
- 私はアリをインストールしました、すべて大丈夫です
ターミナルからAndroidプロジェクトをビルドすることはできますが、ターミナルからbashファイルを呼び出すこともできますが、apkは正常にビルドされます。これがbashファイルです:
#!/bin/bash
export PATH=$PATH:/var/www/zipalign
export PATH=$PATH:/usr/local/ant/bin
export PATH=$PATH:/usr/local/ant/lib
export PATH=$PATH:/usr/share/doc/openjdk-7-jdk
export PATH=$PATH:/root/android-sdk-linux
export PATH=$PATH:/root/android-sdk-linux/tools
export PATH=$PATH:/root/android-sdk-linux/platforms
export PATH=$PATH:/root/android-sdk-linux/platform-tools
export PATH=$PATH:/root/apache-ant-1.8.4/bin/ant
export PATH=$PATH:/var/www/ant/bin
ant release
echo "DONE"
次に、bashファイルを実行するターミナルからphpファイルを呼び出すことができます。これも正常に機能し、apkがビルドされます。これがphpコードです:
<?php
$output = shell_exec("./javaApk.sh");
echo $output;
?>
奇妙なことに、ブラウザからこのphpを呼び出すと、apkがビルドされません。ブラウザに次の情報が返されるだけですが、apkは返されません。
Buildfile: /var/www/1/air.com.domain.FreshApp/java_apk/build.xml DONE
そして、bashファイルに$ PATHをエコーすると(ブラウザーからphpを実行)、次の結果が表示されますが、これはすべて問題ないようです。
/usr/local/bin:/usr/bin:/bin:/var/www/uploads/zipalign:/usr/local/ant/bin:/usr/local/ant/lib:/usr/share/doc/openjdk-7-jdk:/root/android-sdk-linux:/root/android-sdk-linux/tools:/root/android-sdk-linux/platforms:/root/android-sdk-linux/platform-tools:/root/apache-ant-1.8.4/bin/ant:/var/www/uploads/ant/bin
何か案が?