originally posted in:BungieNetPlatform
I am currently trying to get into android development by building my own destiny companion with improved functionality. well thats the plan at least.^^
coming from a fontend dev background I am not that experienced with software development and I hope that maybe some of you have some insight they'd like to share.
[b]The biggest topics:[/b]
[b]# Downloading the Manifest[/b]
for a mobile app i would assume you should download re-usable data to save requests and thus bandwidth.
i would let it compare the version (online/ downloaded) and if it needs to download do this in an asyncTask.
how is this properly achieved? any libraries you would propose for this?
[b]# Authenticating[/b]
i guess webview + passing the cookies with the token is here the answer for android?
[b]# Querying the API[/b]
i have done this now with retrofit. built an interface and built a class for every JSON object. (dont know if thats a good idea)
how did you guys connect your android apps to the api?
i would love to build all my modules in a reusable fashion so they can be shared and used by others in the community.
-
Edited by dazarobbo: 5/14/2015 7:11:19 AM[quote]# Downloading the Manifest for a mobile app i would assume you should download re-usable data to save requests and thus bandwidth. i would let it compare the version (online/ downloaded) and if it needs to download do this in an asyncTask. how is this properly achieved? any libraries you would propose for this?[/quote]For checking for a new version you could: a) on starting the app or at some interval, make a HTTP request to "www.bungie.net/platform/destiny/manifest" b) compare the version in the response with the version of the manifest you have locally (if one at all) c) retrieve the manifest file - the one you will probably want/need is Response.mobileWorldContentPaths.en d) Unzip the file (as it is compressed) and you will have an SQLite database with the content you can then query I have the equivalent of that in PHP at the moment which you can probably translate to Java. Let me know if anything's not clear. [url=http://pastebin.com/J2eeWJ7Z]Cola\Bungie\Destiny\Manifest\Version[/url] [url=http://pastebin.com/d2YQ9AFe]Cola\Bungie\Destiny\Manifest\Manifest[/url] Note for anyone else using PHP: directly importing these files into your project won't work. You'll need to modify them by hand.