Super!
Vielen Dank schon mal dafür!
Ich habe allerdings das selbe Problem wie der arnof, dass ich Probleme habe mit der Activity nach Android zu bekommen.
In Android habe ich eine Methode setActivity(Activity activity) zudem habe ich dort ein Attribute: private Activity activity welches ich befülle.
Dies klappt alles, allerdings wenn ich dannn z.B. eine Toastmeldung ausgebe, bekomme ich keine Ausgabe auf meinen Bildschirm
Bsp: Toast.makeText(this.activity, "Hello World!", Toast.LENGTH_LONG).show();
Und wenn ich z.B.: PackageManager pm = activity.getPackageManager(); verwende, hängt sich die Anwendung auf.
Ich übergebe die Activity in Delphi so:
Code:
// *** Schritt 1: Activity setzen ***
// Methode vorbereiten mit DEX ID
SetMethodActivity := TJNIResolver.GetJavaMethodID((jTempClass as ILocalObject)
.GetObjectID, 'setActivity', '(Landroid/app/Activity;)V');
if not assigned(SetMethodActivity) then
begin
Memo1.Lines.Add('Fehler bei Activity');
Exit;
end;
// Methode aufrufen mit dem Parameter banner_id
JavaEnv^.CallVoidMethodA(JavaEnv, JavaObjectID, SetMethodActivity, @act);
act ist bei mir: act:JActivity;
Wenn ich in der Deklaration suche, finde ich leider auch diesen Eintrag nicht:
Datei: Androidapi.JNI.App
Beudeutet dies, ich muss die Methode dort einbauen?
Wenn ja, gibt es dafür für Anfänger ein Tutorial oder könntest du es mir kurz erklären?
Da ich mich leider nur mit Java auskenne...
Vielen Dank schon mal!