Best Approach to write a FaceBook application for Android


  1. There are Facebook APIs(and SDKs) available to develop applications for other Mobile devices like iPhone, BlackBerry etc, but it seems there are no official ones for Android(?).

  2. People have ported Java APIs to work on Android and have written FaceBook Client applications(FaceBook dev: Wiki Page). Apparently, there is also a light weight FaceBook SDK in alpha release for Android(a la FBRocket). But it is not avised to be used in Production.

  3. Since these FaceBook functionalities have been exposed as REST based service, most of work would invove sending requests in desired format over Http. So, writing a FaceBook client app for Android certainly is doable.There are similar applications already in market e.g.: Bloo.


  1. When asked to write a FaceBook client application what approach should one undertake? Should we choose the SDK or invoke the services over Http?

  2. If there is already a Web application that integrates with FaceBook, can we just browse to that Application from inside a WebView and be done with this?


Asked by: Carlos656 | Posted: 20-01-2022

Answer 1

  1. I would use the Java APIs. You mention they were "ported" but were they? You develop Android apps in Java, you can often just include .jar files and use them in your Android app without any sort of "porting". REST access to FaceBook would also work fine too.

  2. Are you talking about a custom application that you've built on top of FaceBook? If you already have a webapp that works fine in the Android browser then it would be fine to just have your users go to that site by giving them the URL. If the WebApp is only part of your application then you could pop open the browser with that page open, or you could load that page in a WebView as part of your larger application. However if this is all your application is doing, then it's not really an application, it's just a glorified browser bookmark and I would strongly recommend against releasing an app like that to the Android Market unless you like getting horrible ratings.

Answered by: Freddie873 | Posted: 21-02-2022

Similar questions

caching - Approach to cache large amount of Textual and audio data in Android application

We are supposed to cache textual and audio data in our application until device is booted or maximum of two days, whichever happens earlier. To get a perspective on data to be cached, note that we are to store about 200 text headers containing around 10 fields, each of length 30 bytes and about 20 sound files each about a minute long. We are getting the textual data by parsing XMLs and then we keep them in ArrayLis...

iphone - How to approach to develop a multi target mobile web application

i'm newbie to mobile devices, and i've to develop a simple database driven application targeted for mobile devices, in . In particular, my customer needed to: Access with their account to our database Make Photos to some items Associate to it some datas: price, some date, ... Publish it I thought i can build a "single"...

android - which is better approach, put logout method to application or activity?

i have a logout button that appear in all my activity class except login activity,. the logout button have the same logic for all activity class, it simply tell the server the user is logged out, clear all of the shared preferences data, and bring the login activity to foreground create an application subclass that have logout method, or an activity subclass that have logout method and all of my activity ex...

Android approach for "Rate my application"

Closed. This question needs to be more focused. It ...

Best approach for Free and Paid versions of Android application?

I have developed an Android app which I want to be available both as free and paid version. What is the best approach? I can think of three solutions: Split the project into two branches and maintain both of them. Create a library project and have two additional projects, one 'Free' and one 'Paid' version. Use in-app billing. Q: Which solution is the best? And ...

android - Which approach should I take for my mobile application?

We will develop a, social network integrated mobile application which will need to access native device capabilities but 90% of the logic will be implemented in the HTML5/Javascript code posted by Ruby back end to the device. Thus, we would like to update or change the logic/GUI of the app without user involvement. We have strict deadline and have to support iOS, Android and Blackb...

android - Best approach to develop a GPS like application

I'm new to android and I'm starting to develop a GPS like application for android, the basic concept of the app is to show up a blueprint, and display on top of it pins with information related to the position on the blueprint and other settings. An example of this would be taking a blueprint of an apartment which you can scale and pan, and on top of it place markers with information about each part of the apartme...

Iphone/Android - general approach for connect from application to db

I have problem with application for Iphone/Android. I would connect to db server in application but I don't know about how? I use xml-rpc or soap, it is good but sometime data exchange is very slowly. What are is other metotd for connect to get data from db server, for mobile application? I mean the general approach for connect from application to db (data exchange). Thank you for help.

java - What's the right design approach for an application level thread?

I am developing a Multiplayer Online word game on Android and would like to implement a thread that checks for server side events like the following: Player join a game. Player left a game. Player won a game. etc... The thread will be responsible for listening for all kinds of events and dispatching events to the responsible activity If it's visible to the user. ...

android - Approach to convert donate application to key

I've a Free/Donate versions of my opensource application on playstore.The problem currently I'm facing is duplication of work. Because of two different packages, whenever I update my free version, I need to update my donate version. Both versions are exactly the same in functionality perspective and only the packages are different. I'm thinking of converting the donate application as donate key. But not sure How st...

android application memory leaks

I am using kind of results search engine, problem is to remember the searching criteria i made singleton static class which keeps only one instance. In my application there are lots of class level private variables, lots of public static variables, a big util class which contains only static final methods. problem is my application get crash any time any where any spot and interesting thing is crash code a...

Android Application data should not be released by android OS

public class MYApplication extends Application { String property; setter getter } does above code make sure property will not be collectied by android OS if not used for a long period of time.

Android Email application - Is it possible to get all the details which are configured in Email application

Is there any way to get in the code: Email id Password SMTP host SMTP port which the user used to setup his Email account with the Android built in Email application Required because, I am written a MailSender class using JavaMail API there I need to send the mail using the details what user configured in Built in Android Email application.

Android Intent for Twitter application

Is it possible to show a list of applications (with intent.createChooser) that only show me my twitter apps on my phone (so htc peep (htc hero) or twitdroid). I have tried it with intent.settype("application/twitter") but it doesnt find any apps for twitter and only shows my mail apps. Thank you, Wouter

webserver - Retrieve data from a web server for android application

I am developing an application that needs to retrieve some data from a web server. But I have no idea how can this be possible?

Should a legacy Android application be rebuilt using SDK 2.1?

I have an Android application that uses the well known Strategies for Legacy Applications. It is build with the Android SDK 2.0 with manifest settings minSdkVersion="3" (API 1.5) and targetSdkVersion="5" (2.0). Question1: Since maxSdkVersion is not specified, the application should be...

android - Intent to pick an installed application slow in my activity, why?

If you long press on your homescreen and pick to add an application shortcut, you will be greeted with a listview showing all of your instal applications. I needed this same functionality in my application so I copied the intent from the launcher source: Intent mainIntent = new Intent(Intent.ACTION_MAIN, null); mainIntent.addCategory(Intent.CATEGORY_LAUNCHER); Intent pic...

web services - How to store data accessible to both a web site and android application?

I’m developing an Android and web application that will function as a service (use the same data). My question is how should the data be stored to allow for both the web and the android application to have access to the same set of data? Should the android application connect to the sites MySQL server to store/access data? If so how do I allow someone to access the data when they are not in ...

Android 1.6 SMS (older application code)

I have HTC Tattoo with Android 1.6. I have maed a Java program for SMS sending. I got the source on the Internet, I think, versions before 1.6. The problem is: SMSs are sent twice. What is a possible cause for this problem? If possible, please simply post sample code what works OK.

How to close Android application?

I want to close my application, so that it no longer runs in the background. How to do that? Is this good practice on Android platform? If I rely on the "back" button, it closes the app, but it stays in background. There is even application called "TaskKiller" just to kill those apps in the background.

Still can't find your answer? Check out these communities...

Android Google Support | Android Community | Android Community (Facebook) | Android