É necessário criar um terminal de API separado para aplicativos móveis para acessar um aplicativo Web Rails?

Eu tenho um aplicativo da Web implementado no Ruby on Rails 4, preciso de um aplicativo nativo do Android, sou muito novo no desenvolvimento móvel.

Estou um pouco confuso sobre como deve ser a arquitetura da web móvel neste caso. Eu fiz algumas pesquisas on-line, parece haver algumas maneiras de fazer isso, mas ainda tenho algumas perguntas para as quais não consegui encontrar respostas. Agradecemos antecipadamente a todos os indicadores.

1) eu realmente preciso de uma API separada para o aplicativo móvel? Quais são os problemas no uso dos controladores existentes do meu aplicativo Rails comrespond_to format.json?

2) Vi alguns exemplos on-line que sugerem o uso de um namespace de API separado no aplicativo Rails para atender solicitações móveis, por exemploclass Api::ApiController < ActionController::Base para o novo controlador e adicionenamespace :api do em routes.rb. Com essa abordagem, não significa que vou precisar duplicar um pouco da funcionalidade do meu controlador neste novo espaço de nome apenas para dispositivos móveis?

3) Em relação à autenticação, muitos exemplos sugerem o uso de autenticação de token. A estrutura de gerenciamento de sessões do Rails não é boa o suficiente para aplicativos móveis? ou é porque os cookies de sessão funcionam de maneira completamente diferente em um aplicativo móvel?

Aprecie seu tempo.

questionAnswers(1)

yourAnswerToTheQuestion