本文整理自网络,侵删。
例如,当您的计算机被游戏应用程序损坏时,您希望产生振动效果。要在Delphi中使用Android振动器,请使用Android Vibrator类。使用Android振动器时,您需要设置权限。样例代码在窗体上放置两个按钮
按下按钮振动500毫秒当按下按钮时,它会在100毫秒后振动500毫秒;在200毫秒后会振动1000毫秒。描述该过程。(已通过10.2 Tokyo,Nexus 5和Android 5.1.1确认)
unit Unit1;
interface
uses System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants, FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, FMX.Controls.Presentation, FMX.StdCtrls, Androidapi.JNI.Os, Androidapi.Helpers, Androidapi.JNIBridge, Androidapi.JNI.GraphicsContentViewText, Androidapi.JNI.App;
type TForm1 = class(TForm) Button1: TButton; Button2: TButton; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); private { private 宣言 } public { public 宣言 } end;
var Form1: TForm1;
implementation
{$R *.fmx}
procedure TForm1.Button1Click(Sender: TObject);var vr: JVibrator;begin // Vibrator取得 vr := TJVibrator.Wrap(TAndroidHelper.Activity.getSystemService(TJContext.JavaClass.VIBRATOR_SERVICE)); vr.vibrate(500); // 500秒振??end;
procedure TForm1.Button2Click(Sender: TObject);var vr: JVibrator; pt: TJavaArray<Int64>;begin // Vibrator取得 vr := TJVibrator.Wrap(TAndroidHelper.Activity.getSystemService(TJContext.JavaClass.VIBRATOR_SERVICE));
// 100秒off - 500秒振?? - 200秒off - 1000秒振?? pt := TJavaArray<Int64>.Create(4); pt.Items[0] := 100; // Off pt.Items[1] := 500; // On pt.Items[2] := 200; // Off pt.Items[3] := 1000; // On vr.vibrate(pt, -1); // // -1,如果你想停止重复以重复执行0只有一次使用取消方法 pt.Free;end;
end.
相关阅读 >>
Delphi xe5实现按android的back键无法退出关闭程序
Delphi下cpu getcpuid实现(x86和x64)
更多相关阅读请进入《Delphi》频道 >>