2013-02-26 3 views
1

Je cherche un moyen de charger simperium sans avoir à présenter la vue de connexion après la première fois que l'utilisateur entre ses informations.Connexion automatique

C'est ce que je reçois si je ne vous connecter après la première fois:

Simperium error: bucket list not loaded. Ensure Simperium is started before any objects are fetched.

Voici ce que j'utilise init Simperium:

self.simperium = [[Simperium alloc] initWithRootViewController: 
            _window.rootViewController]; 

grâce

+0

Avez-vous déjà trouvé une solution à cette erreur? –

+0

Je suppose que c'est pour OSX donné votre utilisation de '_window'? Le problème est-il que vous voyez un écran d'authentification même après vous être connecté pour la première fois? – mikejohnstn

Répondre

0

Pensez à utiliser OAuth .

OAuth est un système dans lequel l'utilisateur peut fournir ses informations d'identification pour un service populaire tel que Google, Twitter, Facebook ou d'autres fournisseurs d'identification ouverts. Plutôt que de mettre en cache les informations d'identification sur le périphérique, ce qui ne serait pas sûr, puisque l'accès à celles-ci donnerait accès à un grand nombre de systèmes à OAuth, le service d'authentification principal fournissant un jeton à OAuth.

Ce jeton est stocké sur l'appareil et peut être utilisé pour se connecter automatiquement la prochaine fois. L'inconvénient est qu'il peut être assez difficile à configurer pour la première fois, car il y a beaucoup de complexité, sans parler du fait que la norme est assez récente et qu'il y a eu une certaine évolution dans la spécification.

+0

Je ne comprends pas ce que cela a à voir avec Simperium. Est-ce que je manque quelque chose? –

+0

OAuth est un moyen d'authentifier un utilisateur "sans avoir à présenter la vue de connexion après la première fois que l'utilisateur entre ses informations". . ce n'est pas spécifique au simperium. –

+0

OK. Je suppose que l'OP utilise iOS Framework for Simperium, qui gère la connexion, donc passer à OAuth n'est pas vraiment une option. –

0

Simperium a juste besoin des informations d'identification de l'utilisateur pour commencer (l'identifiant de l'application et le nom d'utilisateur/jeton). La vue de connexion est une commodité pour obtenir ces informations d'identification pour vous, si vous pouvez déjà les obtenir en utilisant d'autres moyens (comme l'utilisation de HTTP auth API: https://simperium.com/docs/reference/http/#auth), vous pouvez directement les fournir sans utiliser la vue de connexion. Voir les méthodes dans https://github.com/Simperium/simperium-ios/blob/develop/Simperium/SPAuthenticator.m