Autor Beitrag
Geosucher
Hält's aus hier
Beiträge: 4

Windows
Delphi, FORTRAN, C
BeitragVerfasst: Do 24.07.14 09:30 
Hallo zusammen,

ich versuche zur Zeit eine Prozedur zu erstellen mit der ich in der Android-App eine Mail mit mehrerern Anhängen senden kann.
Ich nutze Delphi XE5 Prof..

Hier mein Versuch:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
procedure TTabbedForm.CreateEmail(const Recipient, Subject, Content: String;Attachment: TStringList);
var Intent          : JIntent;
    Uri             : array of Jnet_Uri;
    AttachmentFiles : array of JFile;
    Uris            : JArrayList;
    i               : Integer;
begin
  Uris:= TJArrayList.Create;
  SetLength(AttachmentFiles,Attachment.Count);
  SetLength(Uri,Attachment.Count);
  Intent := TJIntent.Create;
  Intent.setAction(TJIntent.JavaClass.ACTION_SEND_MULTIPLE);
  Intent.setFlags(TJIntent.JavaClass.FLAG_ACTIVITY_NEW_TASK);
  Intent.putExtra(TJIntent.JavaClass.EXTRA_EMAIL, StringToJString(Recipient));
  Intent.putExtra(TJIntent.JavaClass.EXTRA_SUBJECT, StringToJString(Subject));
  Intent.putExtra(TJIntent.JavaClass.EXTRA_TEXT, StringToJString(Content));
  for i := 0 to Attachment.Count-1 do
   begin
    AttachmentFiles[i]:=SharedActivity.getExternalFilesDir(StringToJString(Attachment.Strings[i]));
    Uri[i]:=TJnet_Uri.JavaClass.fromFile(AttachmentFiles[i]);
    Uris.add(0,Uri[i]);
   end;
  Intent.putParcelableArrayListExtra(TJIntent.JavaClass.EXTRA_STREAM, Uris);
  Intent.setType(StringToJString('vnd.android.cursor.dir/email'));
  SharedActivity.startActivity(Intent);
end;


Leider kommt in der Schleife (Zeile Uri[i]:=....) folgende Fehlermeldung:
"java.lang.NullPointerException: file." ????

Hat jemand eine Idee????

Danke für Tipps und Hinweise.

Geosucher

Moderiert von user profile iconMartok: Delphi-Tags hinzugefügt