无法登录Facebook(错误 - 应用程序ID不能为空)

 杯莫停 发布于 2023-02-09 07:17

我正在尝试登录Facebook并遵循Facebook开发者网站中给出的确切代码.应用程序无法打开,并说应用程序ID不能为空.

编辑:(整个代码)

public class MainActivity extends FragmentActivity implements OnClickListener {
    TextView tv;
    ImageView facebookbutton, pic, b;
    Facebook fb;
    SharedPreferences sp;
    Thread t = new Thread();
    ImageView snap;
    JSONObject obj;
    private MainFragment mainfragment;
    private static final String TAG = "MainFragment";
    protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            if(savedInstanceState == null)
            {
                mainfragment = new MainFragment();
                getSupportFragmentManager().beginTransaction().add(android.R.id.content,mainfragment).commit();
            }
            else
            {
                mainfragment = (MainFragment) getSupportFragmentManager().findFragmentById(android.R.id.content);
            }
        }

getSupportFragmentManager()..是它抛出错误的行.我也添加了子类MainFragment.

MainFragment :(继续在同一类的OnCreate()之后)

private class MainFragment extends Fragment
    {
        private UiLifecycleHelper uiHelper;
        public View onCreateView(LayoutInflater inflater, 
                ViewGroup container, 
                Bundle savedInstanceState) {
            View view = inflater.inflate(R.layout.dummy, container, false);
            LoginButton authButton = (LoginButton) view.findViewById(R.id.authButton);
            authButton.setFragment(this);
            return view;
        }
        private void onSessionStateChange(com.facebook.Session session, SessionState state, Exception exception) {
            if (state.isOpened()) {
                Log.i(TAG, "Logged in...");
            } else if (state.isClosed()) {
                Log.i(TAG, "Logged out...");
            }
        }
        private com.facebook.Session.StatusCallback callback = new com.facebook.Session.StatusCallback() {

            @Override
            public void call(com.facebook.Session session, SessionState state,
                    Exception exception) {
                onSessionStateChange(session, state, exception);

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

            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);
        }
        }
    }

Logcat:

12-20 11:52:32.690: E/AndroidRuntime(3652): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.facebook_integration/com.example.facebook_integration.MainActivity}: java.lang.NullPointerException: Argument 'applicationId' cannot be null
12-20 11:52:32.690: E/AndroidRuntime(3652):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2074)
12-20 11:52:32.690: E/AndroidRuntime(3652):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2099)
12-20 11:52:32.690: E/AndroidRuntime(3652):     at android.app.ActivityThread.access$600(ActivityThread.java:138)
12-20 11:52:32.690: E/AndroidRuntime(3652):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1205)

我试图找出问题,但logcat中没有任何东西可以帮助我.有没有人遇到这样的事情?我不顾一切地想知道这意味着什么.我迷失在这里.任何帮助都会受到高度赞赏.

1 个回答
  • 在menifest文件中提及你的应用程序ID.

    <meta-data android:name="com.facebook.sdk.ApplicationId" android:value="app_id"/>
    

    2023-02-09 07:32 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有