uses  Androidapi.JNI.Os,  Androidapi.JNIBridge;function GetVibratorArray(const AIntArr: array of Int64): TJavaArray<Int64>;var  LIndex: Integer;begin  Result := TJavaArray<Int64>.Create(Length(AIntArr));  for LIndex := Low(AIntArr) to High(AIntArr) do    Result.Items[LIndex] := AIntArr[LIndex];end;procedure VibratorTest;var  LVibrator: JVibrator;  LJavaArray: TJavaArray<Int64>;begin  { Vibrator概要:      cancel(): 关闭震动      hasVibrator():检查硬件是否支持      vibrate(long milliseconds): 震动milliseconds毫秒      vibrate(long[] pattern, int repeat):按给定数组震动 }  { 需要开启Vibrator权限 }  LVibrator := TJVibrator.Create as JVibrator;  { 测试手机是否支持震动 }  if not LVibrator.hasVibrator then  begin    ShowMessage('手机不支持震动');    Exit;  end;{ Test procedure vibrate(milliseconds: Int64); cdecl; overload; }  { 效果A: 立即震动 800 毫秒 }//  LVibrator.vibrate(800);{ Test procedure vibrate(pattern: TJavaArray<Int64>; repeat_: Integer); cdecl; overload;   pattern: 为震动数组参数,偶数代表等待时间(ms), 奇数代表震动持续时间(ms)   repeat_: -1: 只震动一遍;  > -1: 从Index为 repeat_ 的位置开始重复震动 }  { 创建测试数组 }  LJavaArray := GetVibratorArray([500, 1000, 2000, 3000]);  { 效果B: 等待500毫秒 -> 震动1秒 -> 等待2秒 -> 震动3秒 }//  LVibrator.vibrate(LJavaArray, -1);  { 效果C: 效果B重复震动 }//  LVibrator.vibrate(LJavaArray, 0);  { 取消震动(当手机暗屏或锁屏时会自动取消) }//  LVibrator.cancel;  { 效果D: (等待500毫秒 -> 震动1秒 -> 等待2秒 -> 震动3秒)(先按原顺序震动一遍)           接着循环 [1000, 2000, 3000]           ->(等待1秒 -> 震动2秒 - > 等待3秒)           ->[等待1秒 -> 等待2秒 ... ]           这个听上去的效果像( 等待4秒 -> 震动2秒 )}  // LVibrator.vibrate(LJavaArray, 1);  { 效果E: (先按原顺序执行一遍), 接着不会震动(偶数为等待时间) }//  LVibrator.vibrate(LJavaArray, 3);  { 效果F: 当然是报IndexOutBounds异常 }//  LVibrator.vibrate(LJavaArray, {!!!}4);end;

更多相关文章

  1. android Activity 半透明效果
  2. 多个控件跑马灯效果
  3. Android SlidingDrawer 滑动抽屉效果
  4. Android学习记录使用Gallery实现炫丽的拖动效果
  5. Android学习之使用RadioGroup与RadioButton实现单选效果
  6. 【Android 界面效果6】Android 控件之ImageSwitcher图片切换器
  7. Android 自己制作的相册--效果还不错哦

随机推荐

  1. SeekBar自定义样式
  2. 在android 输出log 信息 用于调试
  3. 【Android(安卓)Native Code开发系列】七
  4. Android使用HttpClient下载图片
  5. Android---对ArrayList排序
  6. android的文件系统结构及其引导过程的初
  7. Android(安卓)支持多屏幕机制
  8. Activity中的四种启动模式和onNewIntent(
  9. Android(安卓)AudioPolicyService和Audio
  10. android json解析