ใช้ facebook sdk ใน Android studio


104

ฉันกำลังติดตามFacebook SDK สำหรับ Android ที่ใช้ Android สตูดิโอ เมื่อฉันเรียกใช้แอปพลิเคชันของฉันฉันได้รับคำเตือนดังกล่าวด้านล่าง

Gradle: module 'facebook' won't be compiled. Unfortunately you can't have non-Gradle Java module and Android-Gradle module in one project.

ฉันควรแก้ปัญหานี้อย่างไร?

ฉันลองคำตอบของ @Scott Barta และได้รับข้อความแสดงข้อผิดพลาดต่อไปนี้

    A problem occurred configuring project ':App'.
> Failed to notify project evaluation listener.
   > A problem occurred configuring project ':libraries:facebook'.
      > Failed to notify project evaluation listener.
         > Could not resolve all dependencies for configuration ':libraries:facebook:_DebugCompile'.
            > Could not find any version that matches com.android.support:support-v4:+.
              Required by:
                  MyApplication2.libraries:facebook:unspecified

Android Support Repository ของคุณติดตั้งในตัวจัดการ SDK สำหรับ SDK ที่คุณใช้อยู่หรือไม่
Scott Barta

ไม่ เป็นข้อบังคับหรือไม่?
LoveMeSomeFood

ใช่. นั่นคือข้อความแสดงข้อผิดพลาดที่คุณเห็น ฉันรู้ว่ามันไม่ได้ตั้งใจ การปรับปรุงอยู่ในรายการของเรา ฉันจะอัปเดตคำตอบเพื่อให้สอดคล้องกับความต้องการนี้
Scott Barta

คำตอบ:


250

บันทึก

สำหรับ Android Studio 0.5.5 ขึ้นไปและด้วย Facebook SDK เวอร์ชันที่ใหม่กว่ากระบวนการนี้จะง่ายกว่าที่ระบุไว้ด้านล่างมาก (ซึ่งเขียนไว้สำหรับทั้งสองเวอร์ชันก่อนหน้านี้) หากคุณใช้งานรุ่นล่าสุดสิ่งที่คุณต้องทำมีดังนี้:

  1. ดาวน์โหลด Facebook SDK จากhttps://developers.facebook.com/docs/android/
  2. คลายซิปที่เก็บถาวร
  3. ใน Android Studio 0.5.5 ขึ้นไปให้เลือก "นำเข้าโมดูล" จากเมนูไฟล์
  4. ในวิซาร์ดกำหนดเส้นทางต้นทางของโมดูลที่จะนำเข้าเป็นไดเร็กทอรี "facebook" ภายในไฟล์เก็บถาวรที่คลายแพ็ก (หมายเหตุ: หากคุณเลือกโฟลเดอร์ระดับบนสุดมันจะไม่เพียง แต่นำเข้ามาในไลบรารีเท่านั้น แต่ยังรวมถึงแอปตัวอย่างทั้งหมดซึ่งแต่ละแอปเป็นโมดูลแยกกันซึ่งอาจใช้งานได้ แต่อาจไม่ใช่สิ่งที่คุณต้องการ)
  5. เปิดโครงสร้างโครงการจากCtrl + Shift + Alt + Sนั้นเลือกแท็บการอ้างอิง คลิกที่+ปุ่มและเลือก Module Dependency ในหน้าต่างใหม่ป๊อปอัปให้เลือก:facebook.
  6. คุณควรจะไป

คำแนะนำสำหรับ Android Studio รุ่นเก่าและ Facebook SDK รุ่นเก่า

สิ่งนี้ใช้ได้กับ Android Studio 0.5.4 และรุ่นก่อนหน้าและเหมาะสมที่สุดสำหรับเวอร์ชันของ Facebook SDK ก่อนที่ Facebook จะเสนอไฟล์ Gradle build สำหรับการแจกจ่าย ฉันไม่รู้ว่าพวกเขาเปลี่ยนแปลง SDK เวอร์ชันใด

คำแนะนำของ Facebook ภายใต้ "นำเข้า SDK ลงในโครงการ Android Studio" ในหน้าhttps://developers.facebook.com/docs/getting-started/facebook-sdk-for-android-using-android-studio/3.0/สำหรับโครงการที่ใช้ Gradle (เช่นโครงการของคุณสร้างโดยใช้ตัวช่วยสร้างโครงการใหม่ของ Android Studio และ / หรือมีbuild.gradleไฟล์สำหรับโมดูลแอปพลิเคชันของคุณ) ทำตามคำแนะนำเหล่านี้แทน:

  1. สร้างlibrariesโฟลเดอร์ใต้ไดเร็กทอรีหลักของโปรเจ็กต์ ตัวอย่างเช่นถ้าโปรเจ็กต์ของคุณคือ HelloWorldProject คุณจะต้องสร้างHelloWorldProject/librariesโฟลเดอร์

  2. ตอนนี้คัดลอกfacebookไดเรกทอรีทั้งหมดจากการติดตั้ง SDK ลงในlibrariesโฟลเดอร์ที่คุณเพิ่งสร้างขึ้น

  3. ลบlibsโฟลเดอร์ในfacebookไดเร็กทอรี ถ้าคุณต้องการลบproject.properties, build.xml, และ.classpath .projectไฟล์ด้วย คุณไม่ต้องการพวกเขา

  4. สร้างbuild.gradleไฟล์ในfacebookไดเร็กทอรีที่มีเนื้อหาต่อไปนี้:

    buildscript {
        repositories {
            mavenCentral()
        }
        dependencies {
            classpath 'com.android.tools.build:gradle:0.6.+'
        }
    }
    
    apply plugin: 'android-library'
    
    dependencies {
        compile 'com.android.support:support-v4:+'
    }
    
    android {
        compileSdkVersion 17
        buildToolsVersion "19.0.0"
    
        defaultConfig {
            minSdkVersion 7
            targetSdkVersion 16
        }
    
        sourceSets {
            main {
                manifest.srcFile 'AndroidManifest.xml'
                java.srcDirs = ['src']
                resources.srcDirs = ['src']
                res.srcDirs = ['res']
            }
        }
    }
    

    โปรดทราบว่าขึ้นอยู่กับเวลาที่คุณทำตามคำแนะนำเหล่านี้เมื่อเทียบกับเวลาที่เขียนคุณอาจต้องปรับclasspath 'com.android.tools.build:gradle:0.6.+'บรรทัดเพื่ออ้างอิงปลั๊กอิน Gradle เวอร์ชันที่ใหม่กว่า เร็ว ๆ นี้เราจะต้องใช้เวอร์ชัน 0.7 หรือใหม่กว่า ลองใช้และหากคุณได้รับข้อผิดพลาดว่าจำเป็นต้องใช้ปลั๊กอิน Gradle เวอร์ชันใหม่นั่นคือสิ่งที่คุณต้องแก้ไข

  5. ตรวจสอบว่าได้ติดตั้งAndroid Support Libraryในตัวจัดการ SDK แล้ว

  6. แก้ไขsettings.gradleไฟล์ของคุณในไดเร็กทอรีหลักของแอปพลิเคชันของคุณและเพิ่มบรรทัดนี้:

    include ':libraries:facebook'
  7. หากโปรเจ็กต์ของคุณเปิดอยู่แล้วใน Android Studio ให้คลิกปุ่ม "ซิงค์โปรเจ็กต์กับไฟล์ Gradle" ในแถบเครื่องมือ เมื่อเสร็จแล้วfacebookโมดูลจะปรากฏขึ้น ป้อนคำอธิบายภาพที่นี่

  8. เปิดกล่องโต้ตอบโครงสร้างโครงการ เลือกโมดูลจากรายการด้านซ้ายคลิกที่โมดูลแอปพลิเคชันของคุณคลิกที่แท็บการขึ้นต่อกันและคลิกที่ปุ่ม + เพื่อเพิ่มการอ้างอิงใหม่ ป้อนคำอธิบายภาพที่นี่
  9. เลือก“ การพึ่งพาโมดูล” มันจะแสดงกล่องโต้ตอบพร้อมรายชื่อโมดูลให้เลือก เลือก“: libraries: facebook” ป้อนคำอธิบายภาพที่นี่
  10. คลิกตกลงในกล่องโต้ตอบทั้งหมด Android Studio จะซิงโครไนซ์โปรเจ็กต์ของคุณใหม่โดยอัตโนมัติ (ทำให้ไม่จำเป็นต้องคลิกปุ่ม "ซิงค์โปรเจ็กต์กับไฟล์ Gradle" อีกครั้ง) และรับการอ้างอิงใหม่ คุณควรจะไป

1
/libraries/facebook/build.gradle ให้ฉันมีข้อผิดพลาด "ไม่สามารถแก้ไขสัญลักษณ์ compileSdkVersion" เช่นเดียวกันกับสัญลักษณ์ compileSdkVersion, manifest และอื่น ๆ ...
sensorario

2
สิ่งนี้ใช้ได้ผลสำหรับฉัน แต่ฉันต้องเปลี่ยนเส้นทางไปยังโครงการเกรดไลบรารีของ facebook ให้เป็นเส้นทางที่แน่นอนนั่นคือ":MyApp:libraries:facebook"ทั้งในไฟล์การตั้งค่าและไฟล์ build.grade สำหรับแอปหลักของฉัน
ทำเครื่องหมาย

7
ดีมาก! คำตอบนี้ควรเป็นส่วนหนึ่งของการสอน Facebook SDK อย่างเป็นทางการ
Samuel Barbosa

1
วิธีนี้ใช้ไม่ได้กับฉัน หลังจากเลือกไดเร็กทอรี facebook ภายในไดเร็กทอรี facebook-android-sdk-3.16 วิซาร์ดจะยังคงระบุว่า 'เลือกโมดูลที่จะนำเข้า': $ ฉันใช้ Android Studio (เบต้า) 0.8.2 ความคิดใด ๆ ?
Diego Palomar

2
ทำไมพวกเขาไม่สามารถทำให้สิ่งนี้ตรงไปตรงมาได้สักครั้ง?
Ojonugwa Jude Ochalifu

108

Facebook ได้เพิ่ม SDK ลงในที่เก็บ Maven Central แล้ว ในการกำหนดค่าโปรเจ็กต์ของคุณโดยใช้อินสแตนซ์ของ maven repo คุณจะต้องทำ 2 สิ่ง:

  1. ในไฟล์build.gradle ระดับบนสุดของโปรเจ็กต์ของคุณให้เพิ่มที่เก็บ Maven Central ของฉันมีลักษณะดังนี้:

    repositories {
        jcenter()       // This is the default repo
        mavenCentral()  //  This is the Maven Central repo
    }
    
  2. ในไฟล์build.grade ระดับแอพให้เพิ่มการพึ่งพา Facebook sdk:

    dependencies {
    
        compile 'com.facebook.android:facebook-android-sdk:4.5.0' // Adjust the version accordingly
        // All your other dependencies.
    }
    

คุณยังสามารถปรับเปลี่ยน Facebook SDK เวอร์ชันเฉพาะได้อีกด้วย สำหรับรายการเวอร์ชันที่มีอยู่ในที่เก็บ maven ให้คลิกที่ลิงค์นี้


1
มันทำงานให้ฉัน เป็นวิธีที่ดีที่สุดในการเพิ่ม facebook api บน Android Studio ขอบคุณ
Olkunmustafa

1
นี่เป็นวิธีการในเอกสาร Facebook แต่ไม่ได้ผล ฉันมี android studio 1.0 และ sdk v 3.x
Abhishek Balani

1
โปรดทราบว่าคุณควรระบุหมายเลขเวอร์ชันที่แน่นอนหรืออย่างน้อยก็หลักเช่น 3.23 + Facebook ไม่กลัวที่จะอัปเดต API อย่างรวดเร็วและทำการเปลี่ยนแปลงอย่างรวดเร็วซึ่งจะทำให้บิวด์ล้มเหลวและบิวด์ไม่สามารถทำซ้ำได้
Greg Ennis

@GregEnnis - ข้อมูลดีๆ ฉันอัปเดตคำตอบเล็กน้อยและเพิ่มความคิดเห็นในโค้ดด้วย
SBerg413

ดังนั้นฉันจึงไม่ต้องนำเข้าไลบรารีภายนอกใด ๆ ทั้งสิ้น? เพียงแค่เพิ่ม fb sdk ในไฟล์ gradle ??
Kaveesh Kanwal

17

Facebook เผยแพร่ SDK บน maven central:

เพียงเพิ่ม:

repositories {
    jcenter()       // IntelliJ main repo.
}

dependencies {
    compile 'com.facebook.android:facebook-android-sdk:+'
}

2
ไม่ถูกต้องคุณต้องใช้ mavenCentral () ในส่วนที่เก็บ
Booger

1
jcenter รวมถึง mavenCentral
Romain

12

โซลูชันของ Scott Barta ใช้ได้ผลสำหรับฉันยกเว้นฉันต้องเพิ่มสิ่งเหล่านี้ในการอ้างอิงของไฟล์ build.gradle โครงการหลักของฉัน:

compile files('libs/android-support-v4.jar')
compile project(':libraries:facebook')

ควรค่าแก่การกล่าวถึงคุณต้องแน่ใจว่า:

android {
    compileSdkVersion 18
    buildToolsVersion "18.1.1"

    defaultConfig {
        minSdkVersion 7
        targetSdkVersion 18
    }

เหมือนกันทั้งในไฟล์ build.gradle ... เมื่อฉันทำสิ่งนี้มันก็เหมือนมีเสน่ห์


ฉันได้รับข้อผิดพลาดเมื่อสร้าง: ไม่พบโครงการที่มีเส้นทาง 'libraries: facebook' ในโครงการรูท ... มีความคิดอย่างไร (แน่นอนฉันได้เพิ่มโฟลเดอร์ตามวิธีการแก้ปัญหาของ Scott Bs แม้ว่าฉันจะไม่มีไฟล์ settings.gradle! (โครงการที่สร้างใน Android Studio)
swebal

1
บรรทัดโครงการคอมไพล์ต้องตรงกับโครงสร้างไดเรกทอรีโครงการของคุณ : libraries: facebook หมายความว่าไลบรารี facebook ของคุณอยู่ในโฟลเดอร์ที่เรียกว่า libraries ภายใน root directory ของคุณ
doubleA

6

เมื่อใช้คอมไพล์คุณสามารถรวม facebook-android-sdk ใหม่ล่าสุดได้อย่างง่ายดาย

  • เพิ่ม facebook-android-sdk เป็นโมดูลย่อย: git submodule add https://github.com/facebook/facebook-android-sdk.git
  • เพิ่ม sdk เป็นโครงการ gradle: แก้ไข settings.gradle และเพิ่มบรรทัด: include ':facebook-android-sdk:facebook'
  • เพิ่ม sdk เป็นการอ้างอิงไปยังโมดูล: แก้ไข build.gradle และเพิ่มภายในบล็อกการอ้างอิง: compile project(':facebook-android-sdk:facebook')

4

ฉันใช้ facebook sdk 4.10.0 เพื่อรวมการเข้าสู่ระบบในแอพ Android ของฉัน บทช่วยสอนที่ฉันติดตามคือ:

facebook เข้าสู่ระบบ android studio

คุณจะได้รับชื่อนามสกุลอีเมลเพศรหัส facebook และวันเกิดจาก facebbok

บทแนะนำด้านบนยังอธิบายวิธีสร้างแอปในคอนโซลนักพัฒนาซอฟต์แวร์ของ Facebook ผ่านวิดีโอ

เพิ่มด้านล่างในbuild.gradle(Module:app)ไฟล์:

repositories {
        mavenCentral()
    }

และ

 compile 'com.facebook.android:facebook-android-sdk:4.10.0'

ตอนนี้เพิ่มด้านล่างในไฟล์ AndroidManifest.xml:

 <meta-data android:name="com.facebook.sdk.ApplicationId" android:value="your app id from facebook developer console"/>

     <activity android:name="com.facebook.FacebookActivity"
               android:configChanges="keyboard|keyboardHidden|screenLayout|screenSize|orientation"
               android:theme="@android:style/Theme.Translucent.NoTitleBar"
               android:label="@string/app_name" />

เพิ่มสิ่งต่อไปนี้ในไฟล์ 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"
    tools:context="com.demonuts.fblogin.MainActivity">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textColor="#000"
        android:layout_marginLeft="10dp"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:id="@+id/text"/>

    <com.facebook.login.widget.LoginButton
        android:id="@+id/btnfb"
        android:layout_gravity="center_horizontal"
        android:layout_marginTop="10dp"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

</LinearLayout>

และสุดท้ายเพิ่มด้านล่างในไฟล์ MainActivity.java:

import android.content.Intent;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.content.pm.Signature;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Base64;
import android.util.Log;
import android.widget.TextView;

import com.facebook.AccessToken;
import com.facebook.AccessTokenTracker;
import com.facebook.CallbackManager;
import com.facebook.FacebookCallback;
import com.facebook.FacebookException;
import com.facebook.FacebookSdk;
import com.facebook.GraphRequest;
import com.facebook.GraphResponse;
import com.facebook.Profile;
import com.facebook.ProfileTracker;
import com.facebook.login.LoginResult;
import com.facebook.login.widget.LoginButton;

import org.json.JSONException;
import org.json.JSONObject;

import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.Arrays;


public class MainActivity extends AppCompatActivity {

    private TextView tvdetails;
    private CallbackManager callbackManager;
    private AccessTokenTracker accessTokenTracker;
    private ProfileTracker profileTracker;
    private LoginButton loginButton;
    private FacebookCallback<LoginResult> callback = new FacebookCallback<LoginResult>() {
        @Override
        public void onSuccess(LoginResult loginResult) {
            GraphRequest request = GraphRequest.newMeRequest(
                    loginResult.getAccessToken(),
                    new GraphRequest.GraphJSONObjectCallback() {
                        @Override
                        public void onCompleted(JSONObject object, GraphResponse response) {
                            Log.v("LoginActivity", response.toString());

                            // Application code
                            try {
                                Log.d("tttttt",object.getString("id"));
                                String birthday="";
                                if(object.has("birthday")){
                                    birthday = object.getString("birthday"); // 01/31/1980 format
                                }

                                String fnm = object.getString("first_name");
                                String lnm = object.getString("last_name");
                                String mail = object.getString("email");
                                String gender = object.getString("gender");
                                String fid = object.getString("id");
                                tvdetails.setText(fnm+" "+lnm+" \n"+mail+" \n"+gender+" \n"+fid+" \n"+birthday);

                            } catch (JSONException e) {
                                e.printStackTrace();
                            }

                        }
                    });
            Bundle parameters = new Bundle();
            parameters.putString("fields", "id, first_name, last_name, email, gender, birthday, location");
            request.setParameters(parameters);
            request.executeAsync();

        }

        @Override
        public void onCancel() {

        }

        @Override
        public void onError(FacebookException error) {

        }
    };


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        FacebookSdk.sdkInitialize(this);
        setContentView(R.layout.activity_main);

        tvdetails = (TextView) findViewById(R.id.text);

        loginButton = (LoginButton) findViewById(R.id.btnfb);

        callbackManager = CallbackManager.Factory.create();

        accessTokenTracker= new AccessTokenTracker() {
            @Override
            protected void onCurrentAccessTokenChanged(AccessToken oldToken, AccessToken newToken) {

            }
        };

        profileTracker = new ProfileTracker() {
            @Override
            protected void onCurrentProfileChanged(Profile oldProfile, Profile newProfile) {

            }
        };

        accessTokenTracker.startTracking();
        profileTracker.startTracking();
        loginButton.setReadPermissions(Arrays.asList("public_profile", "email", "user_birthday", "user_friends"));
        loginButton.registerCallback(callbackManager, callback);

    }

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

    }

    @Override
    public void onStop() {
        super.onStop();
        accessTokenTracker.stopTracking();
        profileTracker.stopTracking();
    }

    @Override
    public void onResume() {
        super.onResume();
        Profile profile = Profile.getCurrentProfile();

    }

}

3

ฉันปรับใช้ Facebook Android SDK กับที่เก็บ Sonatype

คุณสามารถรวมไลบรารีนี้เป็น Gradle dependency:

repositories {
    maven {
        url 'https://oss.sonatype.org/content/groups/public'
    }
}

dependencies {
    compile 'com.shamanland:facebook-android-sdk:3.15.0-SNAPSHOT'
}

โพสต์ต้นฉบับที่นี่


ไม่ได้ผลอีกต่อไปไซต์ของคุณไม่ทำงาน ฆ่า IDE ทั้งหมดของฉัน
Mgamerz

แปลกฉันใช้ไซต์ที่ตรวจสอบว่าไซต์หยุดทำงานหรือไม่และแม้แต่หน้าแรกของคุณก็ไม่โหลด
Mgamerz

2

ผู้ที่ใช้ Android Studio 0.8.6 สามารถทำได้:

  1. ดาวน์โหลด Facebook-android-sdk-xxx.zip & Unzip
  2. คัดลอกเฉพาะ Facebook dirภายใต้ Facebook-android-sdk-xxx dir ลงในโครงการของคุณพร้อมกับแอพ /

    • ImAnApp /
      • | - แอพ /
      • | - สร้าง /
      • | - เฟสบุ๊ค /
  3. ตอนนี้คุณควรเห็น Android Studio แสดง facebook เป็นโมดูล

  4. แก้ไข build.gradle ของ facebook เป็นสิ่งนี้
    • ไฟล์ที่ให้ ('../ libs / bolts.jar') ถึง provided files('./libs/bolts.jar')
    • compileSdkVersion Integer.parseInt (project.ANDROID_BUILD_SDK_VERSION) เป็นcompileSdkVersion 20หรือเวอร์ชันอื่น ๆ ที่คุณกำหนดไว้ในแอป
    • buildToolsVersion project.ANDROID_BUILD_TOOLS_VERSION ถึง buildToolsVersion '20.0.0'
    • minSdkVersion Integer.parseInt (project.ANDROID_BUILD_MIN_SDK_VERSION) ถึง minSdkVersion 14
    • targetSdkVersion Integer.parseInt (project.ANDROID_BUILD_TARGET_SDK_VERSION) ถึง targetSdkVersion 20

    apply plugin: 'android-library'

    dependencies {
        compile 'com.android.support:support-v4:19.1.+'
        provided files('./libs/bolts.jar')
    }

    android {
        compileSdkVersion 20
        buildToolsVersion '20.0.0'

        defaultConfig {
            minSdkVersion 14
            targetSdkVersion 20
        }

        lintOptions {
            abortOnError false
        }

        sourceSets {
            main {
                manifest.srcFile 'AndroidManifest.xml'
                java.srcDirs = ['src']
                res.srcDirs = ['res']
            }
        }
    }

ซิงค์ไฟล์ gradle ของคุณอีกครั้งและควรใช้งานได้ดี!


2

ฉันแก้ไขไฟล์

"ไม่พบคุณสมบัติ" ANDROID_BUILD_SDK_VERSION "ในโปรเจ็กต์": facebook ""

ข้อผิดพลาดในbuild.gradleไฟล์โดยการเพิ่มgradle.propertiesค่า:

ANDROID_BUILD_TARGET_SDK_VERSION=21<br>
ANDROID_BUILD_MIN_SDK_VERSION=15<br>
ANDROID_BUILD_TOOLS_VERSION=21.1.2<br>
ANDROID_BUILD_SDK_VERSION=21<br>

ที่มา: https://stackoverflow.com/a/21490651/2161698


1

สร้างไฟล์ build.gradle ในโครงการ facebook sdk:

apply plugin: 'android-library'

dependencies {
    compile 'com.android.support:support-v4:18.0.+'
}

android {
    compileSdkVersion 8
    buildToolsVersion "19.0.0"

    sourceSets {
        main {
            manifest.srcFile 'AndroidManifest.xml'
            java.srcDirs = ['src']
            resources.srcDirs = ['src']
            res.srcDirs = ['res']
            assets.srcDirs = ['assets']
        }

        // Move the build types to build-types/<type>
        // For instance, build-types/debug/java, build-types/debug/AndroidManifest.xml, ...
        // This moves them out of them default location under src/<type>/... which would
        // conflict with src/ being used by the main source set.
        // Adding new build types or product flavors should be accompanied
        // by a similar customization.
        debug.setRoot('build-types/debug')
        release.setRoot('build-types/release')
    }
}

แล้วเพิ่มinclude ':libs:facebook'เท่ากับ<project_directory>/libs/facebook(เส้นทางไปยังห้องสมุด) settings.gradleใน


ฉันทำสิ่งนี้แล้ว ยังคงแสดงข้อผิดพลาด ฉันคิดว่าข้อผิดพลาดบอกว่า facebook ไม่ใช่การหลอกลวงและไม่สามารถสื่อสารได้ แต่ไม่แน่ใจ
LoveMeSomeFood

ลองสร้างผ่านคอนโซล: ./gradlew clean AssembleDebug
Vladimir


0

การใช้ facebook sdk ใน android studio นั้นค่อนข้างง่ายเพียงแค่เพิ่มบรรทัดต่อไปนี้ใน gradle ของคุณ

  compile 'com.facebook.android:facebook-android-sdk:[4,5)'

และตรวจสอบให้แน่ใจว่าคุณได้อัปเดตที่เก็บรองรับ Android แล้วหากไม่อัปเดตโดยใช้ตัวจัดการ sdk แบบสแตนด์อโลน

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.