注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

鑫淼梦园的博客

圆你的梦想 从这里开始

 
 
 

日志

 
 

Delphi XE7实现的在线更新APP的一个程序  

2015-01-05 21:45:38|  分类: delphixe7 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
介绍
本文章介绍了Delphi XE7实现的在线更新APP的一个程序,该程序通过IDHTTP组件在线下载APP到手机中,然后自动安装这个APP程序。
程序首先点击DownLoad APP按钮,实现在线下载APP程序
[ol]
  • procedure TForm1.Button2Click(Sender: TObject);
  • var
  • caminho_d: string;
  • MyFile: TFileStream;
  • begin
  •    //verifica se ja existe para apagar e criar novamente
  •    if FileExists(GetSharedDownloadsDir+'/PJMOBILE.apk') then
  •       DeleteFile(GetSharedDownloadsDir+'/PJMOBILE.apk');
  • // definir o link
  • caminho_d:= 'http://susite.com.br/download/APP.apk';  // aqui defini um caminho pard鉶 pro download , pode ser trocado por um edit, etc
  • MyFile := TFileStream.Create(GetSharedDownloadsDir+'/APP.apk', fmCreate); // local no celular e nome do arquivo com a extens鉶, onde vai salvar.
  •   try
  •     IdHTTP1.Get(caminho_d, MyFile); // fazendo o download do arquivo e salva no celular
  •   finally
  •     MyFile.Free;
  •   end;
  • end;
  • procedure TForm1.IdHTTP1Work(ASender: TObject; AWorkMode: TWorkMode;
  •   AWorkCount: Int64);
  • begin
  •    ProgressBar1.value := AWorkCount;
  •    Application.ProcessMessages;
  • end;
  • procedure TForm1.IdHTTP1WorkBegin(ASender: TObject; AWorkMode: TWorkMode;
  •   AWorkCountMax: Int64);
  • begin
  •    ProgressBar1.value := 0;
  •    ProgressBar1.Max := AWorkCountMax;
  •    Label1.Text := '开始下载';
  • end;
  • procedure TForm1.IdHTTP1WorkEnd(ASender: TObject; AWorkMode: TWorkMode);
  • begin
  •    ProgressBar1.Value := ProgressBar1.Max;
  •    Label1.text := '下载完成';
  • end;[/ol]复制代码
    当下在完成后,点击Atualiza APP按钮,ANdroid会提示是否安装该APP,如果安装,那么就进行新的APP的更新覆盖
    [ol]
  • procedure TForm1.Button1Click(Sender: TObject);
  • var
  •   aFile:Jfile;
  •   Intent:JIntent;
  • begin
  •   aFile:=TJfile.JavaClass.init(stringtojstring(GetSharedDownloadsDir),stringtojstring('APP.apk'));
  •   Intent := TJIntent.Create ;
  •   Intent.setAction(TJIntent.JavaClass.ACTION_VIEW);
  •   Intent.addFlags(TJIntent.JavaClass.FLAG_ACTIVITY_NEW_TASK);
  •   Intent.setDataAndType(TJnet_Uri.JavaClass.fromFile(aFile),StringToJString('application/vnd.android.package-archive'));
  •   SharedActivityContext.startActivity(Intent);
  • end;[/ol]复制代码
    [/td][/tr][/table]
    .viewthread_nge{padding: 5px 0px;}
    .viewthread_nge .imgbutton{float:right; margin:5px 5px 0 0px;}
    .viewthread_nge .imgbutton img{cursor:pointer;}
    .viewthread_nge_listdiv{background: #FFFFFF;border: 1px solid #94CFDD;padding:5px;}
    .viewthread_nge_list {overflow: hidden; zoom: 1; width: 100%; padding: 0; margin: 0;}
    .viewthread_nge_list li {float: left !important; overflow: hidden !important; word-wrap: break-word !important; list-style: none !important; height: 20px !important; vertical-align: bottom !important; margin-left: 0px;margin-bottom: 1px; width:49%; height: 18px;}
    .viewthread_nge_list li a {color: #333; margin-bottom: 1px; padding-left: 25px; height: 18px; background: url('source/plugin/study_viewthread_nge/images/dot.png') no-repeat 10px 5px;}
    .viewthread_nge_gundong{float:left;height:24px;line-height:24px;margin: 5px 10px;}
    .viewthread_nge_gundong .gundongdiv{height:24px;line-height:24px;width:550px;overflow:hidden;}
    .viewthread_nge_gundong a{color: #FFFFFF;}
    转载请保留当前帖子的链接:http://www.dfwlt.com/forum.php?mod=viewthread&tid=1481 谢谢!
    搜索简单,分享不易,且分享且珍惜,您难道不想分享下您的心得?如果觉得本文章好的话,您可以在我们网站上注册,然后发布您的好的心得,让大家共同进步,谢谢!
  •   评论这张
     
    阅读(503)| 评论(0)
    推荐 转载

    历史上的今天

    在LOFTER的更多文章

    评论

    <#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
     
     
     
     
     
     
     
     
     
     
     
     
     
     

    页脚

    网易公司版权所有 ©1997-2017