8月28日 XE8移动开发入门(三)XE8在Android应用中调用Java类, 使用LiveBindings(免费培训)


8月28日上午10点,我们开始 介绍RadStudio XE8 移动开发入门培训的第三部分 - XE8在Android应用中调用Java类,以及在应用中使用LiveBindings,本培训为免费Webinar的方式,注册报名点击这里  https://attendee.gotowebinar.com/register/5716882489471390978 
XE8中提供了Java2OP工具,可以将Java类转换为Delphi可以使用的接口文件,并在Android应用中调用。本次Webinar将带您一步一步了解如何使用该工具,生成接口文件,并部署到Android应用中。
而LiveBindings则是在之前的几个版本中就已经推出的一项新技术,它可以帮助我们轻松完成一些数据库程序中的赋值内容,和数据刷新后的自动更新。
本次Webinar的视频教程已经放到了网盘,到  http://pan.baidu.com/s/1hqhJKSc  看视频教程。其中的SampleCode也放上面了,点击  http://pan.baidu.com/s/1sjvE49J  下载。
对于XE8调用Jar,我是写了一个测试用的Java类,如下。
public class MyCalc {
public static int calcSum(String sn1, String sn2)
{int n1,n2,sum;
n1=Integer.parseInt(sn1);
n2=Integer.parseInt(sn2);
sum=n1+n2;
return sum;
}
public static Float calcAVG(Float sn1, Float sn2)
{Float avg;
avg=(sn1+sn2)/2;
return avg;
}
}
之后,使用Java2OP工具将这个Java class的Jar生成接口文件。之后,我们需要将GUID的部分补全。一些名称修改为有意义的名称。最后,别忘了将Jar文件添加到项目中。对于自己的程序代码,则需要加入一些Java的类型的单元,便于程序中的类型转换。
生成的文件如下:
unit JavaInterfaces;
interface
uses
  Androidapi.JNIBridge,
  Androidapi.JNI.JavaTypes;
type
  // ===== Forward declarations =====
  JMyCalc = interface; // MyCalc
  // ===== Interface declarations =====
  JMyCalcClass = interface(JObjectClass)
    ['{3192AA27-6B76-4518-A94A-E4A1F9428E23}']
    { class } function calcAVG(P1: JFloat; P2: JFloat): JFloat; cdecl;
    // Deprecated
    { class } function calcSum(P1: JString; P2: JString): Integer; cdecl;
    // Deprecated
    { class } function init: JMyCalc; cdecl; // Deprecated
  end;

  [JavaSignature('MyCalc')]
  JMyCalc = interface(JObject)
    ['{432E4437-73EE-4EE0-AC5E-0996CC929676}']
  end;

  TJMyCalc = class(TJavaGenericImport)
  end;

implementation
procedure RegisterTypes;
begin
  TRegTypes.RegisterType('JavaInterfaces/JMyCalc',
    TypeInfo(JavaInterfaces.JMyCalc));
end;

initialization
RegisterTypes;
end.

对于LiveBindings,它是整个RadStudio的跨平台战略的一部分。它取代了原来的DB Aware的组件,使用普通组件就可以完成数据映射的任务。对于一些简单的数据库应用,连一行代码都不需要写。对于一些高级的应用,当然需要自定义功能,LiveBindings也是支持自定义和一些高级特性的。对于,普通控件没有DB Aware控件属性丰富的问题,其实完全可以通过自己修改控件的部分源代码来解决。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值