2017-05-16 3 views
0

私は少し質問があります。アプリケーションのアップデートをダウンロードしてインストールするためのいくつかの方法を実装するアプリケーションを作成しています。install4j apiを使用してプログラムでアップデートをダウンロードしてインストールする

アップデートの確認は問題ありません。正常です。しかし、私はダウンロードとインストールの方法を実装するのに問題があります。私はAPIでいくつかのクラスを見つけましたが、 "それはうまく動作しません"。

ダウンロードはうまく動作しますが、進捗はありません。私はスタートアップ時に "アップデートの確認"アクションを使用したくない。

これは、アップデートをダウンロードするための私の現在のテストコードです:

public static void downloadInstaller(UpdateDescriptorEntry descriptor) 
{ 
    Downloader downloader = new Downloader(0, null); // Don't know what to use instead of 0 
    try 
    { 
     downloader = downloader.connect(descriptor.getURL().toString()); 

     File outputFile = new File(ApplicationSettings.getCachesDirectoryWithIdentifier() + File.separator + descriptor.getFileName()); 

     downloader.download(outputFile, 
          descriptor.getFileSize(), 
          false); 

     if (descriptor.getFileSize() == outputFile.length()) // Check if download complete 
     { 
      logger.info("Successful"); 
     } 
     else 
     { 
      logger.error("Error in download"); 
     } 
    } 
    catch (IOException | UserCanceledException e) 
    { 
     logger.error(e); 
    } 
} 

は今、私は2つの質問があります。

1)ダウンロードを進めることはできますか? ProgressInterfaceインターフェイスがありますが、正しく実装する方法がわかりません。

2.)ダウンロードしたアプリケーションのインストーラをプログラムで(無人モードでも)実行するにはどうすればよいですか?

答えて

1

Downloaderを支援するための

おかげで、実行時ではなく、文書化APIの一部で内部クラスです。

"インストーラ - >画面&アクション"にアップデータアプリケーションを追加して、プログラムで呼び出す必要があります。 「ランチャー統合」タブの統合ウィザードには、アップデータを開始するためのコードスニペットを提供する統合ウィザードがあります。

+0

ヒントをありがとう。それを調べます。 –

+0

うまく動作します、ありがとう –

関連する問題