database di HTML5 Local utilizzabile nei widget Dashboard di Mac?
-
22-09-2019 - |
Domanda
Sto cercando di utilizzare la funzione di database locale di HTML 5 su un widget di Dashboard di Mac. Sto programmando in Dashcode seguente javascript:
if (window.openDatabase)
{
database = openDatabase("MyDB", "1.0", "Sample DB", 1000);
if (database)
{
...database code here...
}
}
Purtroppo il database variabile rimane sempre nullo dopo la chiamata a OpenDatabase-metodo. Sto iniziando a pensare che i database locali non sono supportati in Widget ...
Tutte le idee?
/ pom
Soluzione
No, non sarà in grado di fare quanto sopra. E anche se si potrebbe quindi non sarebbe in grado di distribuire il widget senza distribuire il database ammesso che era un MySQL o SGLite. (Non so cosa si intende per HTML 5 di Db locale.
qui ci sono un certo numero di modi per aggirare questo: -
È possibile aggiungere una fonte di dati che può essere un file JSON, o un file XML o e feed RSS. Quindi, per fare questo con JSON per esempio, si potrebbe scrivere una pagina su un server in PHP o qualcosa che accede un database in modo che quando l'URL è stato chiamato il risultato è stato una stringa JSON. Prendere la stringa JSON e analizzarlo e utilizzarlo nel widget. Questo vi permetterà di ottenere dati, ma non lo si salva.
Un altro modo sarebbe quello di utilizzare le preferenze dell'utente. Ciò consente di salvare e recuperare i dati nel widget individuale.
var preferenceKey = "key"; // replace with the key for a preference
var preferenceValue = "value"; // replace with a preference to save
// Preference code
widget.setPreferenceForKey(preferenceValue, preferenceKey);
È quindi possibile recuperare con
var preferenceForKey = "key"; // replace with the key for a preference
// Preference code
preferenceForKey = widget.preferenceForKey(preferenceForKey);
La chiamata esterna, si potrebbe anche utilizzare REST vi permetterà di leggere qualsiasi quantità di dati all'interno e le preferenze vi permetterà di salvare i dati per un successivo riutilizzo che sopravviveranno logout di e arresti.
Il sito di Apple ha un sacco di informazioni su Widget e tutorial così thjat vale la pena di lavorare attraverso.
Spero che questo aiuti.