JSON資料庫拆解OPEN DATA-交通部臺灣鐵路管理局
組員:李韋萱、廖婕羽、黃雅琪
OPEN DATA 網址:
(試了兩個都拆解不成功)
一、在 AndroidManifest.xml檔,新增網路權限:
三、結果:
做了好幾天也跑了好幾次,問過幾個同學,得到的回應是json開出來是亂碼,但自己開網址卻是正常的,所以想說換資料試試看,但還是拆解不出來,不是不能跑,就是跑成功但沒有看到json。
<com.facebook.share.widget.LikeView android:id="@+id/likeView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentStart="true" />
//按讚按鈕以及連結 private void initInstances() { LikeView likeView = (LikeView) findViewById(R.id.likeView); likeView.setLikeViewStyle(LikeView.Style.STANDARD); //可換 likeView.setAuxiliaryViewPosition(LikeView.AuxiliaryViewPosition.INLINE); likeView.setObjectIdAndType( "https://www.facebook.com/nightice030/", //連結 LikeView.ObjectType.OPEN_GRAPH); }
//回傳 @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); // Handle Facebook Login Result callbackManager.onActivityResult(requestCode, resultCode, data); }
repositories { mavenCentral() }
'com.facebook.android:facebook-android-sdk:4.+'
<uses-permission android:name="android.permission.INTERNET"/>
<meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/facebook_app_id"/>
<provider android:authorities="com.facebook.app.FacebookContentProvider你的應用程式編號" android:name="com.facebook.FacebookContentProvider" android:exported="true"/>
<com.facebook.login.widget.LoginButton android:id="@+id/login_button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:layout_marginTop="30dp" android:layout_marginBottom="30dp" />
CallbackManager callbackManager; AccessToken accessToken;
FacebookSdk.sdkInitialize(getApplicationContext());
//宣告 callbackManagercallbackManager = CallbackManager.Factory.create();
//找到 login buttonfinal LoginButton loginButton = (LoginButton) findViewById(R.id.login_button); loginButton.registerCallback(callbackManager, new FacebookCallback<LoginResult>() { //登入成功 @Override public void onSuccess(LoginResult loginResult) { //之後也許還會用到,先存起來 accessToken = loginResult.getAccessToken(); //send request and call graph api GraphRequest request = GraphRequest.newMeRequest( accessToken, new GraphRequest.GraphJSONObjectCallback() { //當RESPONSE回來的時候 @Override public void onCompleted(JSONObject object, GraphResponse response) { //讀出姓名ID FB 人網頁連結 Log.d("FB" , "complete"); Log.d("FB" , object.optString("name")); Log.d("FB" , object.optString("link")); Log.d("FB" , object.optString("id")); }}); //包入你想要得到的資料,送出 request Bundle parameters = new Bundle(); parameters.putString("fields" , "id,name,link"); request.setParameters(parameters); request.executeAsync(); } //登入取消 @Override public void onCancel() { Log.d("FB" , "CANCEL"); } //登入失敗 @Override public void onError(FacebookException exception) { Log.d("FB" , exception.toString()); } });