2016-11-18 5 views
0

Ich versuche, Windows Auto Update-Funktionalität in einer Elektronen-App zu implementieren (was zu meinem frühen Tod führen kann), und ich bekomme diesen Fehler.autoUpdater.setFeedURL ist keine Funktion

enter image description here

Dies ist die URL ich zum Testen

EDIT vorbei bin: mein Elektron App wird unter Verwendung der zwei package.json Struktur und dieser Code ist in meiner app> main.js

Datei
const feedURL = 'C:\\Users\\p00009970\\Desktop\\update_test'; 
autoUpdater.setFeedURL(feedURL); 
autoUpdater.checkForUpdates(); 

EDIT2: Dank @JuanMa konnte ich es zum Laufen bringen. Hier ist der Code.

// auto update functionality 

const {autoUpdater} = require('electron') 

// local file system example: const feedURL = 'C:\\Users\\john\\Desktop\\updates_folder'; 
// network file system example: const feedURL = '\\\\serverName\\updates_folder'; 

const feedURL = '\\\\serverName\\updates_folder'; 

app.on('ready',() => { 
    autoUpdater.setFeedURL(feedURL); 

    // auto update event listeners, these are fired as a result of autoUpdater.checkForUpdates(); 

    autoUpdater.addListener("update-available", function(event) { 

    }); 
    autoUpdater.addListener("update-downloaded", function(event, releaseNotes, releaseName, releaseDate, updateURL) { 

     //TODO: finess this a tad, as is after a few seconds of launching the app it will close without warning 
     // and reopen with the update which could confuse the user and possibly cause loss of work 

     autoUpdater.quitAndInstall(); 
    }); 
    autoUpdater.addListener("error", function(error) { 

    }); 
    autoUpdater.addListener("checking-for-update", function(event) { 

    }); 
    autoUpdater.addListener("update-not-available", function(event) { 

    }); 

    // tell squirrel to check for updates 
    autoUpdater.checkForUpdates(); 
}) 

Antwort

1

Schließen Sie das autoUpdater-Modul korrekt ein?

const {autoUpdater} = require('electron') 

Wenn ja, versuchen Sie, den Code nach dem App 'ready' Ereignis auszuführen.

app.on('ready',() => { 
    const feedURL = 'C:\\Users\\p00009970\\Desktop\\update_test'; 
    autoUpdater.setFeedURL(feedURL); 
    autoUpdater.checkForUpdates(); 
}) 
+0

Einschließlich alles in App ‚bereit‘ wurde der Fehler zu befreien, aber jetzt kann ich nicht sagen, ob es Updates Ausführung ist oder nicht, ich habe ein Update geschoben, aber nichts passiert – Skedge

+0

Update: App bereit definitiv fixiert meine Problem, mein verbleibendes Problem war mit Corporate Proxy Mist. Ich werde meine Frage mit dem endgültigen Code aktualisieren. – Skedge

+0

froh, ich könnte helfen! – JuanMa