Android Studio 1.1.0 Facebook SDK登录
我尝试使用facebook SDK测试登录 所以我添加了Android Studio 1.1.0 Facebook SDK登录,android,facebook,login,sdk,Android,Facebook,Login,Sdk,我尝试使用facebook SDK测试登录 所以我添加了compile'com.facebook.android:facebook-android-sdk:4.0.0' 然后添加FacebookSdk.sdkinInitialize(getApplicationContext()) 到MainActivity.java 但是当我添加时 <com.facebook.login.widget.LoginButton android:id="@+id/login_button"
compile'com.facebook.android:facebook-android-sdk:4.0.0'
然后添加FacebookSdk.sdkinInitialize(getApplicationContext())代码>
到MainActivity.java
但是当我添加时
<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" />`
你没有发布你的活动代码。但我认为你的代码是这样的:
setContentView(R.layout.my_login_layout);
FacebookSdk.sdkInitialize(getApplicationContext());
mCallbackManager = CallbackManager.Factory.create();
问题在于代码的顺序。忽略布局中的“渲染问题”,将代码顺序更改为:
FacebookSdk.sdkInitialize(getApplicationContext());
mCallbackManager = CallbackManager.Factory.create(); // this line doesn't matter
setContentView(R.layout.my_login_layout);
在OnCreate(…){…}中使用此代码
避免布局渲染问题
如果要解决渲染问题(布局预览),请选中(请参见下文)
下载Facebook SDK
将其作为模块导入到项目中
然后将
添加到布局中
我试过这个,效果很好
在依赖项中添加了此项
dependencies {
compile 'com.facebook.android:facebook-android-sdk:4.4.0'
}
对于那些有渲染问题的人,我找到了一个解决方案。我不再使用gradle.build依赖项来访问facebook SDK。我从Facebook网站下载SDK,并将模块导入到Android Studio中的项目中。然后,添加
<com.facebook.widget.LoginButton
android:id="@+id/authButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="45dp" />
到您的布局xml简单、快捷:将Gradle
->依赖项
上的SDK版本更新到最新版本,渲染问题得到解决。在撰写本文时,最新的Facebook SDK是4.3.0,因此在依赖项上应该是这样的:
compile 'com.facebook.android:facebook-android-sdk:4.3.0'
简单地指定一个不同版本的Facebook SDK对我来说很有用。
调整build.graddle
文件依赖项部分。
我的看起来像
dependencies {
compile 'com.facebook.android:facebook-android-sdk:4.4.0'}
版本4.0.0持续引发异常
我不必将Facebook SDK作为模块导入
我不得不使用不同版本的SDK,但渲染问题非常烦人,没有解决方案?我现在不确定如何避免这种情况。。。因为你是对的,这很烦人。如果我找到一个方法,我会更新答案。这实际上很有意义。我也有同样的问题。干杯我估计新的Facebook SDK将有一些渲染元素。。。Google+也会出现同样的情况,在渲染布局中,它会正确显示按钮,或者出现与我相同的问题?好消息!。。。我不喜欢将项目作为模块导入,但如果这解决了问题,很高兴知道。我为有相同问题的人更新了我的答案…:)
compile 'com.facebook.android:facebook-android-sdk:4.3.0'
dependencies {
compile 'com.facebook.android:facebook-android-sdk:4.4.0'}