2016-05-05 1 views
3

Je tente de créer une application IOS à l'aide du SDK Wikitude Augmented Reality. Actuellement, le SDK nécessite qu'un fichier de configuration soit inclus dans le binaire, ou récupéré du réseau dans le contexte de son propre framework javascript webview-esque.Passage de fichiers locaux à une infrastructure tierce

Le SDK n'a aucun moyen documenté de transmettre ce fichier de configuration du stockage d'application local au contexte javascript. L'implémentation en cours implique l'extraction du fichier de configuration à partir de Parse. Ceci est problématique pour les raisons suivantes:

  1. La configuration doit être téléchargée depuis le réseau chaque fois que le contexte est créé (lors du lancement). Ceci est problématique car la configuration peut être de 10+ mégaoctets.
  2. Aucune option de stockage persistant dans le contexte javascript
  3. Impossible d'autoriser une utilisation hors connexion car chaque lancement nécessite une connexion réseau.

Je suis à la recherche de conseils sur les solutions de contournement pour ce problème. Je considère soit un schéma d'URL personnalisé de protocole NSURL ou potentiellement un serveur web local sur l'application, mais je ne sais pas si le contexte javascript serait en mesure de voir les actifs liés à partir du stockage local de l'application. Tout conseil serait super utile!

Répondre

0

Comment le SDK de Wikitude sait-il extraire le fichier de configuration du réseau, lui attribuez-vous une chaîne URL/entité NSURL? Si tel est le cas, je suppose que vous pouvez essayer un test rapide pour voir si une URL de fichier fonctionnera:

- (NSURL *)urlForConfigFile 
{ 
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
    NSString *localDir = paths[0]; 
    NSString *resourcePath = [NSString stringWithFormat:@"%@/config.txt", localDir]; 
    return [NSURL fileURLWithPath:resourcePath]; 
} 

Cela vous donnera quelque chose comme:

file:///var/mobile/Containers/Data/Application/7DAABE99-F9A9-4281-B95F-971448DA7377/Documents/config.txt

Remplacer « config .txt 'avec votre nom de fichier actuel et assurez-vous qu'il est sur l'appareil au bon endroit, et cela devrait être suffisant pour au moins tester la théorie.