Hoe verbind je met een remote MySQL database in Android

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • randy1357
  • Registratie: Augustus 2014
  • Laatst online: 26-08 16:46
Hallo iedereen!

Momenteel ben ik bezig met een Android app. Ik moet alleen verbinden met een remote MySQL database. Ik heb op internet een heleboel dingen gevonden maar alles daarvan is verouderd of zelfs verwijderd (was deprecated)

Hopelijk kan iemand mij helpen... Alvast bedankt!

Acties:
  • +3 Henk 'm!

  • Umbrah
  • Registratie: Mei 2006
  • Laatst online: 07:53

Umbrah

The Incredible MapMan

Vooropgesteld; waarom zou je dat rechtstreeks willen doen? Dit laat gelijk alarmbellen rinkelen, naast natuurlijk dat je een absurd 'groei probleempje' gaat hebben. Wat voor data gaat het om? Android intern gebruikt regelmatig SQLite. Als het om een bestaande MySQL pagina gaat en een nieuwe app, dan zal ik van harte aangraden om een (REST) interface te schrijven, die ook je security afhandeld, en een HTTP-endpoint is voor je app. Tevens makkelijker te onderhouden.

Acties:
  • 0 Henk 'm!

  • Storm90
  • Registratie: September 2008
  • Laatst online: 09-09 15:23
Vooropgesteld; waarom zou je dat rechtstreeks willen doen? Dit laat gelijk alarmbellen rinkelen, naast natuurlijk dat je een absurd 'groei probleempje' gaat hebben. Wat voor data gaat het om? Android intern gebruikt regelmatig SQLite. Als het om een bestaande MySQL pagina gaat en een nieuwe app, dan zal ik van harte aangraden om een (REST) interface te schrijven, die ook je security afhandeld, en een HTTP-endpoint is voor je app. Tevens makkelijker te onderhouden.
Hier ben ik het mee eens. Bij een directe mysql verbinding zullen tevens de login credentials in de app opgeslagen moeten worden, en als je iets wilt voorkomen is dat middels een decompile je inloggegevens uitgelekt kunnen worden.

Ik zou eerder kiezen voor het bouwen van een API waarmee je communiceert.

Je zou tevens eens een kijkje kunnen nemen naar Amazon AWS en/of Google App Engine. Zij schijnen tegenwoordig goede oplossingen te bieden op het gebied van (schaalbare) back-ends voor je apps. Ik heb er zelf nog niet veel mee geprobeerd, vooral ingelezen, maar je zou daar ook eens naar kunnen kijken :)

[ Voor 24% gewijzigd door Storm90 op 11-10-2016 09:43 ]


Acties:
  • 0 Henk 'm!

  • Hydra
  • Registratie: September 2000
  • Laatst online: 06-10 13:59
Zoals aangegeven maak je eigenlijk nooit rechtstreeks verbinding met een database; iemand die de credentials uit je app vist (dit is compleet triviaal) kan dan een hoop schade doen. Er wordt dus eigenlijk altijd gebruik gemaakt van een API; een service die je requests afhandelt en checks doet of de user dingen doet die hij mag doen.

Aangezien je al met Java bezig bent kan ik Spring Boot aanraden. Het is daarmee erg simpel een REST interface te bouwen. Deze kun je dan op dezelfde machine als je MySQL DB laten draaien. Ik gebruik het dagelijks in m'n werk dus laat maar weten als je nog vragen hebt.

https://niels.nu