我在重命名K9邮件的包名时遇到了很多麻烦。我正在修改它,并最终想把它推向市场,但如果我不能重命名它我不能这样做。我尝试在不同的组合中使用折射器和日食中的ADT工具。在我一起使用折射器和ADT之后,我能够启动程序,但是当我在主要活动之外开始活动时,程序取消预防。在refractor中,我一直在选择除非java文件之外的所有复选框。有没有人能够重命名K9邮件?任何帮助将不胜感激。
答案 0 :(得分:1)
有一个专门用于此目的的k9 shell脚本(需要perl):tools / build-beta。如果在Windows上,应该在cygwin环境中工作。如果更改包的域,它还需要更多修改。不过,我已将其修改为更一般的意义。它使用与ant相同的命令运行(即“sh tools / build-beta debug”),并暂时重命名所有内容然后将其放回原处。你需要更改前5行,如果将TLD从com改为edu,你需要取消注释几行。 ant $@
以下的所有内容都会颠倒整个过程。我对eclipse一无所知。
或者,您可以要求我们将您的大学作为可自动配置的帐户进入。
BETA_TLD=com
BETA_DOMAIN=fsck
BETA_PROJECT=k9
BETA_PROJ_NAME=K9
BETA_APP_NAME="K9 Mail"
BETA_PACKAGE="${BETA_TLD}.${BETA_DOMAIN}.${BETA_PROJECT}"
BETA_PATH="${BETA_TLD}/${BETA_DOMAIN}/${BETA_PROJECT}"
perl -pi -e"s|\@string/app_name|$BETA_APP_NAME|g" AndroidManifest.xml
perl -pi -e"s|com/fsck/k9/R.java|$BETA_PATH/R.java|g" build.xml
perl -pi -e"s|LOG_TAG = \"k9\"|LOG_TAG = \"$BETA_PROJECT\"|" src/com/fsck/k9/K9.java
find src/com/fsck res -type f |xargs -n 1 perl -pi -e"s/com.fsck.k9(?=\W)/$BETA_PACKAGE/g"
perl -pi -e"s|com.fsck.k9|$BETA_PACKAGE|g" AndroidManifest.xml
mv src/com/fsck/k9 src/com/fsck/${BETA_PROJECT}
mv src/com/fsck src/com/${BETA_DOMAIN}
#mv src/com src/${BETA_TLD}
perl -pi -e"s|K9|$BETA_PROJ_NAME|g" build.xml
ant $@
#mv src/${BETA_TLD} src/com
mv src/com/${BETA_DOMAIN} src/com/fsck
mv src/com/fsck/${BETA_PROJECT} src/com/fsck/k9
perl -pi -e"s|$BETA_PACKAGE|com.fsck.k9|g" AndroidManifest.xml
perl -pi -e"s|$BETA_PATH/R.java|com/fsck.k9/R.java|g" build.xml
find src/com/fsck res -type f |xargs -n 1 perl -pi -e"s/$BETA_PACKAGE(?=\W)/com.fsck.k9/g"
perl -pi -e"s|LOG_TAG = \"$BETA_PROJECT\"|LOG_TAG = \"k9\"|" src/com/fsck/k9/K9.java
perl -pi -e"s|$BETA_PROJ_NAME|K9|g" build.xml
perl -pi -e"s|$BETA_APP_NAME|\@string/app_name|g" AndroidManifest.xml