【问题标题】:Renaming K9 Mail package name重命名 K9 Mail 包名
【发布时间】:2012-04-03 09:14:42
【问题描述】:

我在重命名 K9 邮件的包名时遇到了很多麻烦。我正在修改它,并最终希望将它投放市场,但如果我不能重命名它,我就不能这样做。我尝试在 Eclipse 中以不同的组合使用折射器和 ADT 工具。在我一起使用折射器和 ADT 后,我能够启动程序,但是当我在主要活动之外开始活动时,程序取消了赎回权。在折射器中,除了关于非 java 文件的框外,我一直在选择所有复选框。以前有人可以重命名 K9 Mail 吗?任何帮助将不胜感激。

【问题讨论】:

  • 我可以将任何愿意帮助的人链接到我要重命名的源。
  • 你为什么不把你的想法和代码贡献给 K9 项目?
  • 我正在修改它以用于特定目的。我在一所大学工作,我正在尝试对其进行精简并使其仅在 IMAP 上工作,并且除了学生的电子邮件和密码之外不需要额外的设置信息(服务器、端口、ssl ...)。这将为 IT 部门节省大量时间,并为学生省去配置电子邮件客户端的麻烦。尽管我在 Google 代码页上列出了源代码,但我所做的修改不会对整个项目产生太大影响。
  • 我在这篇文章中回答了一个类似的问题,试试吧:[rename-k9-package-name][1] [1]:stackoverflow.com/a/26637464/2903697

标签: java android eclipse


【解决方案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

【讨论】:

  • 如果您能进一步解释,您的回答似乎真的可以帮助我。我不确定如何运行 ANT 脚本。我试图在 Cygwin 和 Ubuntu 中将它作为 perl 脚本运行。两者都给了我错误。我尝试手动浏览源代码并将每次出现的 com.fsk.k9 更改为我需要的包名称。完成此操作后,.apk 启动,我可以查看我的邮件并编辑设置,但我无法撰写邮件。应用力在该点关闭。我不确定我错过了什么。
猜你喜欢
  • 2014-12-25
  • 2011-12-01
  • 2021-06-18
  • 1970-01-01
  • 2018-12-11
  • 2013-09-21
  • 1970-01-01
  • 1970-01-01
  • 2012-03-02
相关资源
最近更新 更多