Computer science student trying to get my feet wet with android development. I am trying to build an app where I am pretty sure a graph database is going to be required (its an app the creates relationships between user created objects, think of a unidirectional mind map).
I have found a few graph databases ported for android.
Neo4j for Android
Titan for Android
Sparksee Mobile
My issue with the first two is that I am not sure if they are even up to date. The last commits are from 2013. I attempted to build the sample project for neo4j for android but got stuck where it required me to use android sdk version 14 (My current sdk manager api 23 doesn't include the option to download api 14). Now I am not sure if I should continue trying to get it to run because I have no idea if it will even work on my app 23 projects.
Sparksee mobile looks like it might work but the licensing is making it really complicated for something I have 0 plans on ever monetizing.
I'm surprised a graph database for android is so hard to find. When I recently learned what a graph database was I can see it being immensely helpful in a ton of applications, yet I feel like I am searching for some obscure thing. I simply can't imagine how any kind of social network or navigation app is built without some kind of graph database. Perhaps I am misled and am just barking up the wrong tree. Any advice?
The Neo4j for Android project that you reference is a port of a very outdated version of Neo4j (and as you mention is built against an outdated version of Android).
Instead of running the database on the Android device, you should consider running the database on a server and using the database's API to interact with it. Sparksee Mobile is the only graph database that I'm aware of that targets running on mobile devices.
For Neo4j, services such as GrapheneDB provide free or very low cost hosted Neo4j instances that you can use for development and testing.
Another option is to go with a hosted graph db. IBM Graph provides a REST API that you can call from any platform and it's basically TP 3.x and Titan 1.x. Here's a link to where you can create an instance https://console.ng.bluemix.net/catalog/services/graph-data-store/
Related
I know this is a nooby question and I apologise in advance. I'm looking all over but I just can't seem to find any documentation on connecting an Android app built in Android Studio to a Google Cloud SQL Database.
I'm only really doing this to try and find out how it is done because I'm interested in it but I'm very new to Android development. I've connected to a SQL database before from c# but it was only a local one, I've never connected to an online one before and I think the Google Cloud Platform operates a bit differently anyway?
Basically, whenever I try to find documentation for this, it keeps referring back to the Google App Engine, which seems to be a different way to create apps than just writing them in Android Studio (very likely I could be wrong, like I said, I'm very new to Android development).
I've seen that there is documentation for Eclipse with the Google Plugin but can't find anything for Android Studio. Is Android Studio not suited for this type of use?
I've seen that you can create a Google Cloud module for a project in Android Studio but I'm not exactly sure what that entails.
Basically, I would just love a set of very basic steps that I should follow for if I were wanting to write to a Google Cloud SQL DB from an Android app in Android Studio.
Otherwise, any good resources where I could possibly learn more about what I need to do would also be appreciated.
I think my biggest issue currently is that I have exactly 0 backend knowledge and so I'm just not really sure of what is required to set up this connection.
You should not access Cloud SQL directly from your Android (or iOS) or other client because you cannot secure the credentials needed to do so. If you embedded your credentials into your app, someone could extract them and either gain access to your database directly or could cause other trouble for you.
If you are open to other database types and you don't want to explore proxying requests through your own backend, then you should take a look at Cloud Firestore or Firebase Realtime Database. Firebase provides SDKs for Android that allow you to access these securely directly from your app. Firestore will scale better than the Realtime database, but that might not matter for your app.
A similar question and reason for why you shouldn't try to connect directly to Cloud SQL is covered in more depth here.
I am planning to build a web application and android app, which will manage huge numbers of notification (push notification), and can work in slow internet connection too. I need to send and get instant notifications. Number of users can be thousands or millions, application will have multiple servers (web farm), multiple database. Now I need to decide that which database will be best for this kind of application and which language should I use for programming. Please help me out. Any suggestions will be appreciated
Well, first you need to decide what your immediate needs are. Are you going to use this on a platforms that could potentially have hundreds of people accessing information at the same time? Then you need to estimate your future needs.
This will help you to decide your database system.
As per my experience i am suggesting you to use MYSQL database.
I Blindly Suggest you to Use Parse Cloud Database,as it provides SDK for All mobile Environments like Android and IOS for easy implementation and also it recently Launched a Javascript SDK to use.Its free for Trial.MultiPlatform Support and Secure
Check it out Here: https://www.parse.com/
Are you sure you going to get to thousands and millions users ? Everyone starts from scratch (read: zero users, except some friends). By this I mean, that you have to concentrate on what's the real issue within your development (growing app user base is different story):
Creation of Android app and it's lifecycle (updates, support of previous versions & etc).
Back-end. Will I also work on Back-end. Working on 2 'projects' (Android app and it's back-end) isn't easy. Not everyone is experienced enough to work on multiple assignments at the same time.
Valuate an option of using SaaS/Paas backend. Most of the have trial or free version for developer.
Third option is great. Get cheap/free web host. Store there configuration, that your Android app will download when it starts. In configuration you should declare what's the back-end and how to communicate with it. You can use any of known services like https://www.firebase.com or https://parse.com/plans or even use Google App engine free tier / AWS free tier.
About developing app for Android - if your app doesn't need any complex calculation or libraries - just write it with JavaScript. It's fast enough. Though, Java apps are always faster and easier to debug.
Good luck !
I'm starting to work on a project for my Collage . The project is to take the collage website and make an android app that loads the website in the app .
the website use jinitiator for registration and i should be able to register via mobile .
does android support jinitiator
You could try it out but jinitiator has been obsolete since 2008 and oracle itself says there is no need for it anymore.
Legacy technology integration might pose some serious incompatibility problems for you. I would rather suggest that your college upgrade their registration system. I feel safe in assuming they need it badly.
I want connect sales Force from my Android Program please suggest which one is correct way to achieve this I am new to sales Force I have some knowledge in Android Application Developement.
Thanks in Advance.
You definitely want to use the REST API for mobile apps. The SOAP API is really heavy, and is better for Server-to-Server integrations. The best way to get started building an Android app for Salesforce.com is to take a look at the Salesforce Mobile SDK for Android:
http://wiki.developerforce.com/page/Mobile_SDK
There's a very helpful getting started PDF linked on that page.
However, the SDK is meant mostly for starting new apps, so you'll have some work ahead of you integrating it into an existing application. The main things you want are the oAuth 2.0 User-Agent login and REST wrappers.
You may also find this app useful -- I put it together for a presentation at Dreamforce '11, which was shortly before the Mobile SDK for Android came out, so I wrote the oAuth and REST stuff myself. Might be a simpler starting point for you.
https://github.com/tomgersic/DreamforcengerHunt
Hope that helps!
You can either use the RESTful interface or the SOAP webservices. The latter is a bit easier to deal with IMHO.
Under setup in salesforce, download the partner or enterprise WSDL (partner = generic, enterprise = specific for your SF-instance). Now with wsdl2java you can create Stubs for those wsdl entries. Import those into your android app and use them. See here for a Java Exampe by Salesforce.com.
Be sure your user has the permission to "do API". You might want to look into SSO if you want to make a "production"/commercial app. Also, to login, remember to use the correct password, you might need to add the API key (generate using the Setup tab in SF). Hope this helps.
Try checking out some of the open-source SDK projects the developer evangelists have added to the forcedotcom github
Lots of good examples on different platforms, including android with phonegap/html5 and a native SDK for android (iOS and Android) to get you past authentication and onto building your app.
Salesforce Provides mobile SDK for development on mobile device, here is the link for android SDK:
http://wiki.developerforce.com/page/Getting_Started_with_the_Mobile_SDK_for_Android
You need to:
Download SDK.
Add a sample project included in SDK's native/SampleApps folder(make sure you check include to the workspace while importing the project).
Get your remote access form salesforce and update in your app.
--This should get you started with a sample app form salsforce.
After this you need to modify existing code to your own code.
You can go to trailhead and start browsing on it, while working with your own application you will have to learn a lot about smartStore and smartSync,
I did implemented A smartStore App with using salesforce as database provider, if you want i can upload it to drive and share a link to you and
if you have any doubts about using or understanding the flow be free to ask..
The android app reads from database but doesnt write anything to DB,
the app display a few web pages, and other simple things like list of search results...
Please note that I managed to convert the .apk file to .bar without any problems using BlackBerry automated tools, so, the code is compatible with Blackberry SDK. However, I to need create all necessary deployment files, .cod, .jad, .bar, etc,
how can I do that?
is it true that I need to re-write it?
I have imported the android project to Blackberry project and everything seems fine except class R it seems there is no class R in blackberry, what should I do to it?
To see the app on Android market https://play.google.com/store/apps/details?id=com.hazcheck.dgl
to see the app on iTunes http://itunes.apple.com/us/app/hazcheck-dgl-lite/id518643993
Thanks for your continuous help
It's possible to have domain model and other parts same for Android, BlackBerry and J2ME. But be aware that it should be compatible with java 1.3 so you could miss you sugar like new classes, reflection, annotations, etc. This also requires additional effort on design and support level. And the last point the UI and other platform depended parts should be written from scratch.
I would write BB app from beginning for your case because you're saying it's simple app and Android version is already finished.