¿Cuáles son algunos consejos, trucos y trucos para aplicaciones móviles que se conectan a API de terceros?

Si su aplicación hace uso de API de terceros, no tiene el control completo del destino de su aplicación. Debe tener un plan para lo que sucede el día en que el tercero desaparece o cambia de opinión sobre la API.

Esto está algo relacionado con el punto n. ° 1 en la respuesta del usuario de Quora, pero va más allá. El tercero puede cambiar las reglas sobre quién puede usar su API, o dónde y cuándo pueden hacerlo, o puede decidir establecer nuevos límites en la cantidad de conexiones por día o mes. O el tercero podría simplemente cerrar la tienda (como me sucedió una vez, donde escribí una aplicación para trabajar con un servicio en línea, y el servicio se cerró antes de que la aplicación se completara).

Si la API no es el foco principal de su aplicación, esto podría no ser un gran problema. Por ejemplo, una aplicación que ofrece publicaciones en Facebook pero donde las publicaciones de Facebook no son el foco principal de la aplicación.

Sin embargo, si la API es el foco principal de su aplicación, está caminando en un campo minado. El servicio que proporciona la API puede interrumpirlo en cualquier momento, sin previo aviso. Un par de ejemplos: Delicious Library (http://www.delicious-monster.com), una aplicación popular de Mac, no tiene una versión de iOS. No es que no puedan escribirlo o no quieran, es que Amazon no permitirá el uso de sus API en aplicaciones móviles. Además, numerosas aplicaciones de Twitter se han topado con los cambios recientes en las políticas de Twitter que limitan severamente el número de usuarios de esas aplicaciones. Las aplicaciones existen, pero incluso si la gente las quiere, es difícil venderlas porque Twitter limita la cantidad de copias por aplicación.

Independientemente de la (s) API (s) que utilice, planifique para el día en que de repente ya no pueda hacerlo. Ese día tal vez nunca llegue, por supuesto. Pero puede ser.

Estos son algunos de mis pensamientos basados ​​en mi experiencia previa trabajando en una aplicación móvil como ingeniero de backend e integrándome con bibliotecas de terceros como Twitter, Facebook y Amazon (AWS, S3 y Cloudfront):

1. Cambian muy a menudo.
Debe asegurarse de externalizar todas las URL de terceros y diseñar su código de manera que sea más fácil de modificar. Su diseño debe estar ligeramente acoplado y prefiero tener interfaces para que pueda conectar otras bibliotecas con menos cambios de código.

2. No están bien documentados.
Pasamos mucho tiempo de lo que esperábamos al implementar la compra en la aplicación de Apple. La documentación de Apple no es detallada y completa.

3. Use bibliotecas para integrarse con API de terceros
Antes de comenzar a escribir el código de integración desde cero, vea si ya hay una buena biblioteca. Por. por ejemplo, Twitter4j fue bastante bueno para integrar las API de Twitter.

4. Algunas API de terceros no son compatibles con localhost
Cree un entorno de prueba similar a su entorno de producción para probar las API que no sean compatibles con localhost. Esto es especialmente verdadero para implementar API de devolución de llamada.

Totalmente de acuerdo con la respuesta de Tom, particularmente la línea en negrita ” Si su aplicación hace uso de API de terceros, no tiene el control total del destino de su aplicación.

Su mejor caso de acción podría ser explorar todas las vías para construir su propia API en lugar de aprovechar una tercera parte. Entonces (presumiblemente) tendrá más control sobre cualquier cosa que pueda salir mal.

More Interesting

¿Cuáles son algunas de las mejores aplicaciones de apuestas jamás creadas?

¿Cuáles son algunas aplicaciones que vale la pena obtener?

¿Cuáles son algunas de las herramientas útiles de depuración utilizadas en las pruebas de software, especialmente una aplicación móvil (nativa y web)?

¿Cuáles son algunas de las ventajas y desventajas de usar la identificación del dispositivo + identificador de usuario, identificador + contraseña o inicio de sesión de FB / Twitter / Google como métodos de identificación de usuario en una aplicación móvil?

¿Cuáles son algunos de los mejores ejemplos de diseño centrado en el usuario en el mundo móvil?

¿Cuáles son algunas de las aplicaciones útiles o interesantes disponibles en Google Play Store?

¿Cuáles son algunos desarrolladores independientes de iOS / Android que ganan más de $ 1000 al mes solo desde APPS desde App Store / Google Play?

¿Cuáles son algunos buenos SDK de análisis de aplicaciones móviles en tiempo real?

¿Cuáles son algunas buenas fuentes de desarrollo de aplicaciones de la India para desarrollar mi aplicación de comercio móvil?

¿Cuáles son algunas buenas lecturas para hacer una versión móvil de su aplicación web?

¿Cuáles son algunas aplicaciones que solo unos pocos conocen?

¿Cuáles son algunas buenas aplicaciones de Android para editar videos?

¿Cuáles son algunas buenas aplicaciones de Android para aprender (cualquier cosa) que funcionen sin conexión a Internet / sin conexión?

¿Cuáles son algunos conceptos interesantes para usar Uber como las aplicaciones de taxi?

¿Cuáles son algunas compras en la aplicación que compraste y que no te hicieron sentir engañado?