如何使用Delphi 10 Seattle的Android应用程序接收Intent。
我以前编写的 “ 使用Firephionek Android应用程序接收Delphi XE8的Intent ”中没有处理Activity.OnNewIntent的问题。
发送字符串到另一个应用程序
创建一个新的多设备应用程序并将TButton和TMemo放置在窗体上。
intent01
按下按钮后,输入的字符串将发送到另一个应用程序。
描述按下Button1时的事件。
创建一个JIntent并设置要发送的数据。
Intent := TJIntent.Create;
Intent.setType(StringToJString('text/plain'));
Intent.setAction(TJIntent.JavaClass.ACTION_SEND);
Intent.putExtra(TJIntent.JavaClass.EXTRA_TEXT, StringToJString(AText));
使用Android API PackageManager类的queryIntentActivities方法,确认是否存在可以处理该意图的应用程序。
如果有可以处理的应用程序,请发送意图。
if MainActivity.getPackageManager.queryIntentActivities(Intent,
TJPackageManager.JavaClass.MATCH_DEFAULT_ONLY).size > 0 then
MainActivity.startActivity(Intent)
else
ShowMessage('Receiver not found');
源代码如下所示:
uses
Androidapi.JNI.GraphicsContentViewText, // JIntent
Androidapi.Helpers, // StringToJString
FMX.Platform.Android; // MainActivity
procedure TForm1.Button1Click(Sender: TObject);
var
AText: string;
Intent: JIntent;
begin
AText := Memo1.Text

本文档介绍了如何在Delphi10Seattle中创建Android应用程序,以便能够发送和接收Intent。首先展示了如何通过按钮点击事件发送字符串Intent到其他应用,接着详细解释了如何配置AndroidManifest.template.xml文件以接收ACTION_SEND类型的Intent。同时,文章还讨论了在应用程序等待或关闭状态下如何正确处理OnNewIntent事件,确保能接收到Intent数据。
最低0.47元/天 解锁文章
547

被折叠的 条评论
为什么被折叠?



