2015-07-31 4 views
0

я этот массив JSON хранится в моей локальной переменной:Swift - магазин JSON глобально

let bigJsonArray = JSON(response) 

мой вопрос, есть ли возможность хранить эту «bigJsonArray» в глобальной переменной/сессии/печенье/конфигурации поэтому я могу получить к нему доступ во всех представлениях моего приложения?

Кто-нибудь знает, как обработать это и может мне помочь?

Поздравления и благодарности!

+0

JSON массив? Вы имели в виду анализируемый файл JSON? – SalmonKiller

+0

«Сессия» и «cookie» обычно используются в отношении веб-серверов. Какой здесь контекст? приложение iOS? OS X приложение? Что-то другое? Какие данные вы хотите хранить? Конфигурации, которые редко меняются? Данные, загруженные с сервера? – ahruss

+0

его приложение для iOS. я имею в виду, что я получил асинхронные данные с веб-сервера. Этот ответ анализируется с использованием библиотеки SwiftyJSON, и я хочу сохранить эти данные в отставке, поэтому мне не нужно запрашивать их снова. Если вы понимаете, о чем я? –

ответ

4

Что вы можете сделать, так это определить bigJsonArray как глобальную переменную, просто определив ее вне любого класса, и компилятор Swift поймет ее как глобальную переменную, и вы сможете получить к ней доступ из любого места вашего кода.

, например:

import UIKit 

var bigJsonArray = JSON(response) 

class a { 
    var x = 0 
} 

, что это проклятие не будет сохранить данные, если вы убили приложение, но от того, что я понял из вашего вопроса вам просто нужно, чтобы иметь возможность доступа к нему из всех приложений без отправка запроса на сервер.

1

Если вы хотите сохранить данные JSON навсегда, вы просто сохраните данные, полученные вами в качестве файла, и в следующий раз, когда вам это нужно, вы прочитаете их из файла и проанализируете (на самом деле это метод для этого) вместо загрузки и анализа данных. Гораздо проще, чем пытаться сохранить анализируемые данные.

Если это данные, которые могут быть загружены , прочитайте соответствующую документацию, чтобы убедиться, что файл не архивирован и хранится в каталоге кеша, где ОС может удалить его, если пространство является жестким.

+0

ok спасибо, я посмотрю на это. –

Смежные вопросы