- 人气:
- 放大
- 缩小
- 二维码
- 赞赏
delphi 实现代码重启android app
var
Form1: TForm1;
implementation
uses
System.DateUtils,
Androidapi.JNI.GraphicsContentViewText,
FMX.Platform.Android,
Androidapi.Helpers,
Androidapi.JNI.App
;
{$R *.fmx}
procedure ReStartApp();
var
LPM : JPackageManager;
LIntent_Start : JIntent;
LPendingIntent : JPendingIntent;
LMS : Int64;
begin
LPM := TAndroidHelper.Context.getPackageManager();
LIntent_Start := LPM.getLaunchIntentForPackage(
TAndroidHelper.Context.getPackageName()
);
LIntent_Start.addFlags( TJIntent.JavaClass.FLAG_ACTIVITY_CLEAR_TOP );
LPendingIntent := TJPendingIntent.JavaClass.getActivity(
TAndroidHelper.Context,
{RequestCode},
LIntent_Start,
TJPendingIntent.JavaClass.FLAG_CANCEL_CURRENT
);
// System.currentTimeMillis() is "wall clock time in UTC".
// LMS := DateTimeToUnix( Now, False {InputIsUTC} ) * 1000; //slow
LMS := LMS + System.DateUtils.MilliSecondOf( Now ); //Fast
TAndroidHelper.AlarmManager.&set(
TJAlarmManager.JavaClass.RTC,
LMS + 500,
LPendingIntent
);
TAndroidHelper.Activity.finish();
end;