2012-03-29 13 views
0

Ich habe viel Mühe beim Umbenennen des Paketnamens von K9 Mail. Ich modifiziere es und möchte es irgendwann auf den Markt bringen, aber ich kann das nicht tun, wenn ich es nicht umbenennen kann. Ich habe versucht, Refraktor und das ADT-Tool in Eclipse in verschiedenen Kombinationen zu verwenden. Ich bin in der Lage, das Programm zu starten, nachdem ich den Refraktor und ADT zusammen benutze, aber wenn ich Tätigkeiten außerhalb der Haupttätigkeit starte, schließt das Programm ab. Im Refraktor habe ich alle Kontrollkästchen neben Nicht-Java-Dateien ausgewählt. Kann jemand K9 Mail vorher umbenennen? Jede Hilfe wird geschätzt.Umbenennen von K9 Mail Paketname

+0

Ich kann jeden, der bereit ist zu helfen, mit der Quelle verbinden, die ich versuche, umzubenennen. – almyz125

+0

Warum bringst du deine Ideen und deinen Code nicht einfach in das K9-Projekt ein? –

+1

Ich ändere es für einen bestimmten Zweck. Ich arbeite an einer Hochschule, und ich versuche, es zu verringern und es nur mit IMAP arbeiten zu lassen und keine zusätzlichen Einstellungsinformationen (Server, Häfen, ssl ...) anders als die Kursteilnehmer email und Kennwort erfordern. Dies spart der IT-Abteilung viel Zeit und erspart den Schülern die Mühe, einen E-Mail-Client zu konfigurieren. Die Änderung, die ich mache, würde nicht viel für das gesamte Projekt tun, obwohl ich die Quelle auf der Google-Codepage aufgelistet habe. – almyz125

Antwort

1

Es gibt ein k9-Shell-Skript (das perl benötigt) speziell für diesen Zweck: tools/build-beta. sollte in einer Cygwin-Umgebung funktionieren, wenn es unter Windows läuft. es erfordert ein bisschen mehr Modifikation, wenn auch die Domain des Pakets geändert wird. Ich habe es jedoch in einen allgemeineren Sinn geändert. Es läuft mit dem gleichen Befehl wie ant (d. h. "sh tools/build-beta debug") und benennt vorübergehend alles um und legt es dann zurück. Sie müssen die ersten 5 Zeilen ändern, und Sie müssen ein paar Zeilen auskommentieren, wenn Sie die TLD von com zu edu ändern. alles unter ant [email protected] kehrt den Prozess um. Ich weiß nichts über Sonnenfinsternis.

Alternativ könnten Sie uns bitten, Ihre Universität als automatisch konfigurierbares Konto einzugeben.

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 [email protected] 
#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 
+0

Ihre Antwort scheint mir sehr hilfreich zu sein, wenn Sie es weiter erklären könnten. Ich bin mir nicht sicher, wie ich ein ANT-Skript ausführen soll. Ich habe versucht, es als ein Perl-Skript in Cygwin und in Ubuntu auszuführen. Beide gaben mir Fehler. Ich habe versucht, die Quelle manuell durchzugehen und jedes Vorkommen von com.fsk.k9 in den Paketnamen zu ändern, den ich brauchte. Danach wird die .apk gestartet und ich kann meine E-Mails sehen und Einstellungen bearbeiten, aber ich kann keine E-Mails verfassen. Die Anwendungskraft schließt an diesem Punkt. Ich bin mir nicht sicher, was ich vermisse. – almyz125