shamanic / android Goto Github PK
View Code? Open in Web Editor NEWAndroid app for users to play game
Android app for users to play game
Location Tracking Standard notification icon saying that it's running or "game is playing"
(additionally a button in the app just lets you do it manually if you feel like it)
"save location" button for this
Location Data Fields (SQLite)
user_guid
randomid
lat
long
timestamp
Have this app be a small thin wrapper to load the game in the native Android HTMLView for now. Just to get something out there!
The table "Features" for the Shamanic DB has to be considered carefully. It's going to be easier to imagine such a table as a noSQL collection or JSON array, because any tag or perimeter or location will have multiple features that may or may not be present. If we would like we can just use a nested JSON object in the noSQL db to get the list of features. BUT in Sqlite we won't be able to do these things. So figure out how to do this.
It would be helpful for app scalability to take advantage of Google Play Services' LocationManager object (described here: http://developer.android.com/reference/android/location/LocationManager.html ) - to get GPS data into the SQLite DB - this allows us to set up a way to manually tag a location as well as poll the device at regular intervals for location data.
Minimal Design for now
Default Icons "GPS Looking" / Limited color scheme
Have a datetime for when your data was last uploaded to the game
user can press upload to upload the newest data to the server (JSON formatted)
"upload" button for this
The player could use just the "convex hull" points of the location data, or "length of journey", or "elevation change total" (so a short trip in lat/long would not be considered short if it included a lot of vertical movement), etc.
Have the player be able to determine what kind of data they would like to be recorded.
We should design some custom icons (SVG if possible!) for the app. Ideally there will be icons to do different things in-game and an icon to alert the user that the GPS data collection is running (this is, I believe, what are called notification icons).
This will allow us to dynamically create stuff with data as it's saved into MongoDB.
The current Shamanic Sqlite DB architecture only allows for lat, long and timestamp columns in the "location" table. For a more fully realized platform to test game ideas on, it would be helpful to enhance the database schema to include more columns in the location table, and to build out three more tables: tags, perimeters, and features. The tables should also have getters and setters for the columns, CRUD functionality and a way to get this data out of the single-user mobile world and into the larger multi-user MongoLab collection.
The other pages which will be accessible through the app need to be written. For this issue, at least the framework for those pages should be prepared, with a way to navigate through the pages.
On the GUI for the mobile app, allow users to tag locations when they are at ones of interest to them. This functionality should be a button which launches a dialog (and can be dismissible) to confirm the tag, and options which can be selected (to be determined by kind of game the user is playing).
There's a MEAN full stack web app related to this project. Place the code in a repository under this account for us all to see!
A GUID will be generated by the Android app / IPhone to give you an initial user instance on the system
The user's mobile device will upload location information when the user wishes by pressing the "upload to game" button (language pending)
Server needs error handling to return to the app if the upload was successful or not, so the user can try again.
It will be more beneficial for us to agree on an Object-Relational Mapper to talk to SQLite (and, eventually, to Postgres) rather than sitting down and hammering out raw query strings ourselves. I recommend we choose between a few different ORMs.
Have a look at OrmLite, SugarORM, and GreenDAO to start with.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.