Delphi XE5中以Andorid 启动应用程序


本文整理自网络,侵删。

 
使用单位
uses
  Androidapi.JNI.JavaTypes, // StringToJString
  FMX.Helpers.Android, // SharedActivity
  Androidapi.JNI.GraphicsContentViewText; // TJIntent
使用功能
STRTOJURI
“ StrToJURI(ASource)”与“ TJnet_Uri.JavaClass.parse(StringToJString(ASource))”相同。

开启网址
var
  Intent: JIntent;
begin
  Intent := TJIntent.Create;
  Intent.setAction(TJIntent.JavaClass.ACTION_VIEW);
  Intent.setData(StrToJURI('http://www.gesource.jp/weblog/'));
  SharedActivity.startActivity(Intent);
end;
打开PDF文件
var
  Intent: JIntent;
  FileName: string;
begin
  FileName := …; //PDF文件名
  Intent := TJIntent.Create;
  Intent.setAction(TJIntent.JavaClass.ACTION_VIEW);
  Intent.setDataAndType(StrToJURI(FileName),
    StringToJString('application/pdf'));
  SharedActivity.startActivity(Intent);
end;
开弦
var
  Intent: JIntent;
begin
  Intent := TJIntent.Create;
  Intent.setAction(TJIntent.JavaClass.ACTION_SEND);
  Intent.setType(StringToJString('text/plain'));
  Intent.putExtra(TJIntent.JavaClass.EXTRA_TEXT, StringToJString('内部测试'));
  SharedActivity.startActivity(Intent);
end;
打开地图(Google地图)
var
  Intent: JIntent;
begin
  Intent := TJIntent.Create;
  Intent.setAction(TJIntent.JavaClass.ACTION_VIEW);
  Intent.setData(StrToJURI('geo:0,0?q=大阪市'));
  SharedActivity.startActivity(Intent);
end;
使用Google Maps进行搜索
指定大阪站的纬度(34.701909),经度(135.494977)和步行模式(模式= w)。

var
  Intent: JIntent;
begin
  Intent := TJIntent.Create;
  Intent.setAction(TJIntent.JavaClass.ACTION_VIEW);
  Intent.setClassName(StringToJString('com.google.android.apps.maps'), StringToJString('com.google.android.maps.MapsActivity'));
  Intent.setData(StrToJURI('google.navigation:///?ll=34.701909,135.494977&title=地区&mode=w'));
  SharedActivity.startActivity(Intent);
end;
打开拨号器
var
  Intent: JIntent;
begin
  Intent := TJIntent.Create;
  Intent.setAction(TJIntent.JavaClass.ACTION_DIAL);
  Intent.setData(StrToJURI('tel:090-XXXX-XXXX'));
  SharedActivity.startActivity(Intent);
end;
发送邮件
var
  Intent: JIntent;
begin
  Intent := TJIntent.Create;
  Intent.setAction(TJIntent.JavaClass.ACTION_SEND);
  Intent.setType(StringToJString('message/rfc822'));
  Intent.putExtra(TJIntent.JavaClass.EXTRA_EMAIL, StringToJString('test@example.com'));
  Intent.putExtra(TJIntent.JavaClass.EXTRA_SUBJECT, StringToJString('邮件主题'));
  intent.putExtra(TJIntent.JavaClass.EXTRA_TEXT, StringToJString('邮件正文'));
  SharedActivity.startActivity(TJIntent.JavaClass.createChooser(Intent,
    StrToJCharSequence('请选择邮件软件')));
end;
开启Android设定画面
var
  Intent: JIntent;
begin
  Intent := TJIntent.Create;
  Intent.setAction(StringToJString('android.settings.SETTINGS'));
  SharedActivity.startActivity(Intent);
end;
因为我正在学习,所以请让我知道是否有任何错误。

相关阅读 >>

Delphi编程之系统oem diy

Delphi debug权限提升

Delphi 如何从html格式的字符串中提取纯文本?

Delphi unigui 调用js

Delphi中提取网页源代码

Delphi下spcomm串口编程

Delphi颜色转换函数

windows 编程 窗体生成的过程

Delphi 计算文件大小

Delphi jpeg图片压缩

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...