Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,027

HOME > Mobile > Mobile Forum > Android ผมลองเขียนปุ่ม login facebook แล้วมันขึ้น error รบกวนช่วยแนะนำหน่อยว่ามต้องแก้ไขตรงไหน



 

Android ผมลองเขียนปุ่ม login facebook แล้วมันขึ้น error รบกวนช่วยแนะนำหน่อยว่ามต้องแก้ไขตรงไหน

 



Topic : 114499



โพสกระทู้ ( 71 )
บทความ ( 0 )



สถานะออฟไลน์




ด้านล่างเป็นผมโค้ดที่ผมเขียนตามเว็บที่ผมเจอ พอลองทำตาม ปรากฏว่ามันพอรันบนโทรศัพท์แล้วมันขึ้น unfortunately, AAAA has stopped.
ไฟล์

activity_main.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <com.facebook.widget.LoginButton
        android:id="@+id/facebookLoginButton"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_marginTop="50dp" />

</LinearLayout>


ไฟล์ MainActivity.java

MainActivity.java
package com.example.firstlogin;

import android.content.Intent;
import android.os.*;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v7.app.ActionBarActivity;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Toast;

import com.facebook.Request;
import com.facebook.Request.GraphUserCallback;
import com.facebook.Response;
import com.facebook.Session;
import com.facebook.SessionState;
import com.facebook.UiLifecycleHelper;
import com.facebook.model.GraphUser;
import com.facebook.widget.LoginButton;

public class MainActivity extends ActionBarActivity {

    private static String TAG = MainActivity.class.getSimpleName();

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        
        if (savedInstanceState == null) {
            getSupportFragmentManager()
            	.beginTransaction()
                .add(R.id.facebookLoginButton, new PlaceholderFragment())
                .commit();
        } 
        
        
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {

        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();
        if (id == R.id.action_settings) {
            return true;
        }
        return super.onOptionsItemSelected(item);
    }

    /**
     * A placeholder fragment containing a simple view.
     */
    public static class PlaceholderFragment extends Fragment {
        private UiLifecycleHelper uiHelper;
        private Session.StatusCallback callback = new Session.StatusCallback() {
            @Override
            public void call(Session session, SessionState state, Exception exception) {
                onSessionStateChange(session, state, exception);
            }
        };

        public PlaceholderFragment() {
        }

        private void onSessionStateChange(Session session, SessionState state, Exception exception) {
            if (state.isOpened()) {

                Request request = Request.newMeRequest(session, new GraphUserCallback() {

                    @Override
                    public void onCompleted(GraphUser user, Response response) {
                        Toast.makeText(getActivity(), 
                                "Hello " + user.getName(), 
                                Toast.LENGTH_LONG).show();
                    }
                });
                request.executeAsync();

            } else if (state.isClosed()) {
                Log.i(TAG, "Logged out...");
            }
        }

        @Override
        public void onResume() {
            super.onResume();

            Session session = Session.getActiveSession();
            if (session != null &&
                   (session.isOpened() || session.isClosed()) ) {
                onSessionStateChange(session, session.getState(), null);
            }

            uiHelper.onResume();
        }

        @Override
        public void onActivityResult(int requestCode, int resultCode, Intent data) {
            super.onActivityResult(requestCode, resultCode, data);
            uiHelper.onActivityResult(requestCode, resultCode, data);
        }

        @Override
        public void onPause() {
            super.onPause();
            uiHelper.onPause();
        }

        @Override
        public void onDestroy() {
            super.onDestroy();
            uiHelper.onDestroy();
        }

        @Override
        public void onSaveInstanceState(Bundle outState) {
            super.onSaveInstanceState(outState);
            uiHelper.onSaveInstanceState(outState);
        }

        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            uiHelper = new UiLifecycleHelper(getActivity(), callback);
            uiHelper.onCreate(savedInstanceState);
        }

        @Override
        public View onCreateView(LayoutInflater inflater, ViewGroup container,
                Bundle savedInstanceState) {
            View rootView = inflater.inflate(R.layout.activity_main, container,
                    false);

            LoginButton authButton = (LoginButton) rootView.findViewById(R.id.facebookLoginButton);
            authButton.setFragment(this);
            return rootView;
        }

    }

}



LogCat Error
02-18 13:30:05.157: E/Trace(24887): error opening trace file: Permission denied (13)
02-18 13:30:05.247: E/ResourceType(24887): Style contains key with bad entry: 0x01010479
02-18 13:30:05.317: W/dalvikvm(24887): VFY: unable to resolve virtual method 11453: Landroid/view/ViewGroup;.onNestedScrollAccepted (Landroid/view/View;Landroid/view/View;I)V
02-18 13:30:05.317: W/dalvikvm(24887): VFY: unable to resolve virtual method 11459: Landroid/view/ViewGroup;.onStopNestedScroll (Landroid/view/View;)V
02-18 13:30:05.327: W/dalvikvm(24887): VFY: unable to resolve virtual method 9137: Landroid/support/v7/internal/widget/ActionBarOverlayLayout;.stopNestedScroll ()V
02-18 13:30:05.397: W/dalvikvm(24887): VFY: unable to resolve virtual method 11456: Landroid/view/ViewGroup;.onRtlPropertiesChanged (I)V
02-18 13:30:05.407: W/dalvikvm(24887): VFY: unable to resolve virtual method 411: Landroid/content/res/TypedArray;.getChangingConfigurations ()I
02-18 13:30:05.407: W/dalvikvm(24887): VFY: unable to resolve virtual method 433: Landroid/content/res/TypedArray;.getType (I)I
02-18 13:30:05.567: D/dalvikvm(24887): GC_CONCURRENT freed 211K, 5% free 8318K/8711K, paused 20ms+10ms, total 51ms
02-18 13:30:05.577: W/dalvikvm(24887): threadid=1: thread exiting with uncaught exception (group=0x41c0c438)
02-18 13:30:05.577: E/AndroidRuntime(24887): FATAL EXCEPTION: main
02-18 13:30:05.577: E/AndroidRuntime(24887): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.firstlogin/com.example.firstlogin.MainActivity}: java.lang.ClassCastException: com.facebook.widget.LoginButton cannot be cast to android.view.ViewGroup
02-18 13:30:05.577: E/AndroidRuntime(24887): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2068)
02-18 13:30:05.577: E/AndroidRuntime(24887): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2093)
02-18 13:30:05.577: E/AndroidRuntime(24887): at android.app.ActivityThread.access$600(ActivityThread.java:134)
02-18 13:30:05.577: E/AndroidRuntime(24887): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1204)
02-18 13:30:05.577: E/AndroidRuntime(24887): at android.os.Handler.dispatchMessage(Handler.java:99)
02-18 13:30:05.577: E/AndroidRuntime(24887): at android.os.Looper.loop(Looper.java:137)
02-18 13:30:05.577: E/AndroidRuntime(24887): at android.app.ActivityThread.main(ActivityThread.java:4814)
02-18 13:30:05.577: E/AndroidRuntime(24887): at java.lang.reflect.Method.invokeNative(Native Method)
02-18 13:30:05.577: E/AndroidRuntime(24887): at java.lang.reflect.Method.invoke(Method.java:511)
02-18 13:30:05.577: E/AndroidRuntime(24887): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:789)
02-18 13:30:05.577: E/AndroidRuntime(24887): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:556)
02-18 13:30:05.577: E/AndroidRuntime(24887): at dalvik.system.NativeStart.main(Native Method)
02-18 13:30:05.577: E/AndroidRuntime(24887): Caused by: java.lang.ClassCastException: com.facebook.widget.LoginButton cannot be cast to android.view.ViewGroup
02-18 13:30:05.577: E/AndroidRuntime(24887): at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:937)
02-18 13:30:05.577: E/AndroidRuntime(24887): at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1126)
02-18 13:30:05.577: E/AndroidRuntime(24887): at android.support.v4.app.BackStackRecord.run(BackStackRecord.java:739)
02-18 13:30:05.577: E/AndroidRuntime(24887): at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1489)
02-18 13:30:05.577: E/AndroidRuntime(24887): at android.support.v4.app.FragmentActivity.onStart(FragmentActivity.java:548)
02-18 13:30:05.577: E/AndroidRuntime(24887): at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1163)
02-18 13:30:05.577: E/AndroidRuntime(24887): at android.app.Activity.performStart(Activity.java:5018)
02-18 13:30:05.577: E/AndroidRuntime(24887): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2041)
02-18 13:30:05.577: E/AndroidRuntime(24887): ... 11 more
02-18 13:30:07.477: D/dalvikvm(24887): GC_CONCURRENT freed 331K, 6% free 8432K/8967K, paused 12ms+12ms, total 42ms




Tag : Mobile, Android







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2015-02-18 13:27:38 By : funrun View : 1124 Reply : 2
 

 

No. 1



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

Quote:
LoginButton authButton = (LoginButton) rootView.findViewById(R.id.facebookLoginButton);


รู้สึกว่าจะมีปัยหากับตัวนี้น่ะครับ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-02-18 15:55:46 By : mr.win
 


 

No. 2



โพสกระทู้ ( 71 )
บทความ ( 0 )



สถานะออฟไลน์


แล้วควรจะแก้ยังไงอะครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-02-18 17:00:49 By : funrun
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : Android ผมลองเขียนปุ่ม login facebook แล้วมันขึ้น error รบกวนช่วยแนะนำหน่อยว่ามต้องแก้ไขตรงไหน
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 03
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่