摘要:Android - Facebook Like Button
2014.10.3 出現了一篇
Mobile Like Button now Available to Everyone
https://developers.facebook.com/blog/post/2014/10/02/mobilelike/
然後就開始研究這門技術。
一開始我還以為,跟Web一樣,任一個url都會幫你記錄like,按讚數,誰按過讚之類的。
結果不如我以為的。
在facebook natvie like button 有其限制
終於看懂裡面的一段話
People using a mobile app can directly Like the app's Facebook Page, or any Open Graph object within the app
必須是Facebook Page(粉絲頁),或Open Graph object 才行。(感覺我整個被陰了)
而Android Like View 的開發文章參考如下:
https://developers.facebook.com/docs/android/like-button
但應該是3.1.9之後出來的吧,不確定,終之去下載最新的Facebook SDK
https://developers.facebook.com/docs/android/getting-started
下載
https://developers.facebook.com/resources/facebook-android-sdk-current.zip
將裡面資料夾中的
facebook,
加入你的Eclipse Workspace裡。
並設定 facebook專案/右鍵/Properties/Android/ 選擇至少2.2以上(任一Android版本)。
在你要開發的專案下加入該facebook library
在有likeview的頁面
撰寫以下程式
private UiLifecycleHelper uiHelper;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mBtnStore.setOnClickListener(this);
uiHelper = new UiLifecycleHelper(this,mStatusCallback);
// if you don't want to use the UiLifecycleHelper, call sdkInitialize instead
// Settings.sdkInitialize(this);
LikeView likeView = (LikeView) findViewById(R.id.like_view);
likeView.setObjectId(FACEBOOK_PAGE_URL);
likeView.setLikeViewStyle(Style.BOX_COUNT);
}
StatusCallback mStatusCallback = new StatusCallback(){
@Override
public void call(Session session, SessionState state, Exception exception) {
}
};
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
uiHelper.onActivityResult(requestCode, resultCode, data, null);
// if you don't use the UiLifecycleHelper, call handleOnActivityResult on the LikeView instead
// LikeView.handleOnActivityResult(this, requestCode, resultCode, data);
}
XML LAYOUT 部份如下
<com.facebook.widget.LikeView
android:id="@+id/like_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
</com.facebook.widget.LikeView>
因為有使用Facebook SDK
所以需設定一些東西在AndroidManifest.xml
在application tag 下加入
<application>
<meta-data
android:name="com.facebook.sdk.ApplicationId"
android:value="@string/facebook_app_id" />
</application>
附上Web版處理like的連結與相關文章
https://developers.facebook.com/docs/plugins/like-button/
http://www.wibibi.com/info.php?tid=370
http://www.inside.com.tw/2010/04/22/how-to-install-your-own-facebook-like-button