Showing posts with label Facebook. Show all posts
Showing posts with label Facebook. Show all posts
Sunday, December 16, 2012
Facebook放棄HTML5使用原生碼的見解
放棄使用HTML 5會使得Facebook發展彈性變小與更新速度變慢(我指的是直接丟上HTML5給使用者而不是下載更新的速度)
由此可見HTML5
1. 發展仍未成熟
2. 廠商支援度不佳
照此看來Facebook原來只需一個HTML5 team就能同時在iOS和Android上更新
現在需要將此部門分散到iOS和Android上,加強在原生碼的部分,分別為不同平台開發,假設日後Microsoft的Windows phone也起來以後勢必要再加派人手開發。
Facebook如此做的好處:
1. 完全與該平台相容,不會有衝突的問題。
2. 使用原生的好處是平台本身系統有針對其原生碼優化,運行更順暢。
3. 硬體支援,硬體也會隨著原生的平台進行調校,運行速度加快。
4. 使用者感覺更好,不會有笨重的感覺。
壞處:
1. 資源勢必分散,不能用一套運行在所有平台上。
2. 功能有可能不一致,例如因為平台的關係導致功能不支援或者是用法不同。
3. 品質不好控制,假設只要管控一套程式碼就可以,現在要為各個平台各分配不同負責人。
4. 更新速度不一致,每個平台開發的時間不易一致。
5. 使用者經驗每個平台可能不一致。
Friday, September 30, 2011
Quick Check In
I launched an App named "Quick Check In" a period ago.
As the name, it allows users check in to Facebook quickly!
I wrote this because there is no fast enough app to enter screen that searches and shows places well.
And this is not a monster app that occupy mount of memory or internal storage, even more it saves the data connection and power consumption to let user check in efficiently.
Here are the related links, I hope you love it.
http://www.facebook.com/apps/application.php?id=233917706638405
https://market.android.com/details?id=com.sanhom.quickcheckin&feature=search_result
As the name, it allows users check in to Facebook quickly!
I wrote this because there is no fast enough app to enter screen that searches and shows places well.
And this is not a monster app that occupy mount of memory or internal storage, even more it saves the data connection and power consumption to let user check in efficiently.
Here are the related links, I hope you love it.
http://www.facebook.com/apps/application.php?id=233917706638405
https://market.android.com/details?id=com.sanhom.quickcheckin&feature=search_result
Sunday, August 14, 2011
Two ways to upload photo to Facebook
Graph and REST
1. Use Graph
/ALBUM_ID/photos
This way needs album id to upload a photo within a album.
Bundle params = new Bundle();
Uri uri = (from somewhere)
byte[] data = null;
InputStream is = mContext.getContentResolver().openInputStream(uri);
data = new byte[is.available()];
is.read(data);
if (data != null) {
params.putString("message", "test");
params.putByteArray("source", data);
String response = Facebook.request(ALBUM_ID/photos, params, "POST");
}
2. Use REST
photos.upload
This doesn't need a album id, instead it creates a album with your application name if there doesn't exist one.
Bundle params = new Bundle();
Uri uri = (from somewhere)
byte[] data = null;
InputStream is = mContext.getContentResolver().openInputStream(uri);
data = new byte[is.available()];
is.read(data);
if (data != null) {
params.putString("method", "photos.upload");
params.putByteArray("picture", data);
String response = Facebook.request(null, params, "POST");
}
1. Use Graph
/ALBUM_ID/photos
This way needs album id to upload a photo within a album.
Bundle params = new Bundle();
Uri uri = (from somewhere)
byte[] data = null;
InputStream is = mContext.getContentResolver().openInputStream(uri);
data = new byte[is.available()];
is.read(data);
if (data != null) {
params.putString("message", "test");
params.putByteArray("source", data);
String response = Facebook.request(ALBUM_ID/photos, params, "POST");
}
2. Use REST
photos.upload
This doesn't need a album id, instead it creates a album with your application name if there doesn't exist one.
Bundle params = new Bundle();
Uri uri = (from somewhere)
byte[] data = null;
InputStream is = mContext.getContentResolver().openInputStream(uri);
data = new byte[is.available()];
is.read(data);
if (data != null) {
params.putString("method", "photos.upload");
params.putByteArray("picture", data);
String response = Facebook.request(null, params, "POST");
}
Subscribe to:
Posts (Atom)