Erstellen eines Anlagen-Handlers
Mithilfe der AttachmentHandler-Schnittstelle können Sie eine Anlage in einer E-Mail-Nachricht verwalten, die in der Nachrichtenliste auf dem BlackBerry-Gerät angezeigt wird.
Anmerkung: Der
BlackBerry Attachment Service empfängt alle Anlagen zuerst. Anlagen-Handler von Drittanbietern können dieses Standardverhalten nicht außer Kraft setzen. Weitere Informationen zum
BlackBerry Attachment Service finden Sie im
Administratorhandbuch für BlackBerry Enterprise Server.
- Importieren Sie die erforderlichen Klassen und Schnittstellen.
import net.rim.blackberry.api.mail.*;
import net.rim.device.api.ui.container.*;
import net.rim.device.api.ui.component.*;
- Implementieren Sie die AttachmentHandler-Schnittstelle, um einen benutzerdefinierten Anlagen-Handler zu erstellen.
public class AttachTest implements AttachmentHandler {...}
- Implementieren Sie die supports(String)-Methode, um den Inhaltstyp der Anlage festzulegen, die von Ihrem Handler unterstützt wird.
public boolean supports(String contentType)
{
return (contentType.toLowerCase().indexOf("contenttype") != -1 ? true : false);
}
- Implementieren Sie die menuString()-Methode, um den Text des Menüeintrags festzulegen, der angezeigt wird, wenn ein Benutzer eine Anlage auswählt.
public String menuString()
{
return "Custom Attachment Viewer";
}
- Implementieren Sie die run()-Methode, um festzulegen, was geschehen soll, wenn ein Benutzer auf den Menüeintrag klickt. Im folgenden Codebeispiel verwendet ein neuer Bildschirm die RichTextField-Klasse, um eine String-Darstellung des Inhalts der Anlage anzuzeigen.
public void run(Message m, SupportedAttachmentPart p)
{
MainScreen view = new MainScreen();
view.setTitle("Attachment Viewer");
view.add(new RichTextField(new String((byte[])p.getContent())));
}
- Rufen Sie AttachmentHandlerManager.addAttachmentHandler() auf, um den Anlagen-Handler beim Manager zu registrieren. Beachten Sie, dass der Anlagenname mit dem Präfix "x-rimdevice" versehen werden muss, damit die Anlage gesendet und auf dem BlackBerry-Gerät gespeichert wird.
AttachmentHandlerManager m = AttachmentHandlerManager.getInstance();
CustomAttachmentHandler ah = new CustomAttachmentHandler();
m.addAttachmentHandler(ah);
Waren diese Informationen hilfreich? Senden Sie uns Ihren Kommentar.