Für die Verwendung von Google-Plus-Integration in Android Studio

Mache ich Anwendung und ich wollen zu integrieren, es mit G+, um Benutzer-login mit dem Google-Konto. Erstellen app, die ich verwenden Android Studio.

Ich gelesen, dass viele Fragen und Antworten auf Stack Overflow, aber ich kann nicht fix meine app!

Hier sind die Schritte, die ich vorgenommen:

1. Hinzufügen google-play-services.jar zu libs-Ordner von meinem Projekt

2. Klicken Sie auf "Fügen Sie die Bibliothek" auf die jar-Datei in Android-Studio-Projekt-explorer

3. Fügen Sie das Skript zum java-Datei aus dem Beispiel in der web

4. Hinzufügen google-play-services.jar Bibliothek zu Bauen.Gradle Datei

5. Starten Sie die app macht es crash

Die Frage ist: Wie Google+ ingeration der Anwendung mit Android Studio, mache ich etwas falsch???, Danke, dass Ihr für Sie helfen.

Hier meine Quellcodes:

Java-Klasse:

import com.google.android.gms.common.ConnectionResult;
import com.google.android.gms.common.GooglePlayServicesClient.ConnectionCallbacks;
import com.google.android.gms.common.GooglePlayServicesClient.OnConnectionFailedListener;
import com.google.android.gms.plus.PlusClient;

public class StartActivity extends Activity implements View.OnClickListener, ConnectionCallbacks, OnConnectionFailedListener {

    private static final String TAG = "ExampleActivity";
    private static final int REQUEST_CODE_RESOLVE_ERR = 9000;

    private ProgressDialog mConnectionProgressDialog;
    private PlusClient mPlusClient;
    private ConnectionResult mConnectionResult;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.loading_screen);

        mPlusClient = new PlusClient.Builder(this, this, this)
                .setVisibleActivities("http://schemas.google.com/AddActivity", "http://schemas.google.com/BuyActivity")
                .build();

        mConnectionProgressDialog = new ProgressDialog(this);
        mConnectionProgressDialog.setMessage("Signing in...");

        initializeSplashElements();

    }


    ///    ***     ///        PLUS INTEGRATION        ///    ***     ////

    @Override
    protected void onStart() {
        super.onStart();
        mPlusClient.connect();
    }

    @Override
    protected void onStop() {
        super.onStop();
        mPlusClient.disconnect();
    }

    @Override
    public void onConnectionFailed(ConnectionResult result) {
        if (result.hasResolution()) {
            try {
                result.startResolutionForResult(this, REQUEST_CODE_RESOLVE_ERR);
            } catch (IntentSender.SendIntentException e) {
                mPlusClient.connect();
            }
        }
        //Save the result and resolve the connection failure upon a user click.
        mConnectionResult = result;
    }

    @Override
    protected void onActivityResult(int requestCode, int responseCode, Intent intent) {
        if (requestCode == REQUEST_CODE_RESOLVE_ERR && responseCode == RESULT_OK) {
            mConnectionResult = null;
            mPlusClient.connect();
        }
    }

    @Override
    public void onConnected(Bundle bundle) {
        String accountName = mPlusClient.getAccountName();
        Toast.makeText(this, accountName + " is connected.", Toast.LENGTH_LONG).show();
    }

    @Override
    public void onDisconnected() {
        Log.d(TAG, "disconnected");
    }

    ///    ***     ///        PLUS INTEGRATION        ///    ***     ///

    (...)

}

Layout-XML:

<?xml version="1.0" encoding="utf-8"?>

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
              xmlns:tools="http://schemas.android.com/tools"
              android:orientation="vertical"
              android:layout_width="match_parent"
              android:layout_height="match_parent"
              tools:context=".StartActivity"
              android:clickable="false"
              android:background="@drawable/ziel_pomar_tlo">

    <ImageView
            android:layout_width="fill_parent"
            android:layout_height="150dp"
            android:id="@+id/splashLogo"
            android:src="@drawable/catch_up_logo_flatten"
            android:contentDescription="@string/catchup_logo_describe"
            android:layout_marginTop="40dp"
            android:layout_alignParentTop="true"
            android:layout_alignParentLeft="true"
            android:focusable="false"/>

    <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textAppearance="?android:attr/textAppearanceLarge"
            android:text="@string/loading_3dot"
            android:id="@+id/loadingText"
            android:enabled="true"
            android:gravity="center"
            android:textSize="40dp"
            android:layout_alignParentBottom="true"
            android:layout_alignParentLeft="true"
            android:layout_alignParentRight="true"
            android:layout_marginLeft="35dp"
            android:layout_marginRight="35dp"
            android:layout_marginBottom="35dp"/>

    <ScrollView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/scrollView"
            android:layout_above="@+id/loadingText"
            android:layout_below="@+id/splashLogo"
            android:layout_margin="10dp"
            android:layout_alignParentEnd="false"
            android:layout_centerHorizontal="true">

        <LinearLayout
                android:orientation="vertical"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:baselineAligned="false"
                android:clickable="false"
                >

            <LinearLayout
                    android:orientation="vertical"
                    android:layout_width="fill_parent"
                    android:layout_height="wrap_content"
                    android:layout_gravity="top"
                    android:id="@+id/gps_row">

                <TextView
                        android:layout_width="fill_parent"
                        android:layout_height="wrap_content"
                        android:text="@string/loading_screen_no_gps"
                        android:id="@+id/gps_desc"
                        android:textSize="20dp"/>

                <LinearLayout
                        android:layout_width="fill_parent"
                        android:layout_height="wrap_content"
                        android:weightSum="3"
                        android:layout_marginTop="10dp">

                    <Button
                            style="?android:attr/buttonStyleSmall"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:text="@string/loading_screen_no_gps_settings"
                            android:id="@+id/gps_settings"
                            android:layout_weight="2"/>

                    <Button
                            style="?android:attr/buttonStyleSmall"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:text="@string/loading_screen_no_gps_ok"
                            android:id="@+id/gps_fixed"
                            android:layout_weight="1"/>
                </LinearLayout>
            </LinearLayout>

            <LinearLayout
                    android:orientation="vertical"
                    android:layout_width="fill_parent"
                    android:layout_height="wrap_content"
                    android:id="@+id/web_row"
                    android:layout_gravity="bottom|top"
                    android:layout_marginTop="20dp">

                <TextView
                        android:layout_width="fill_parent"
                        android:layout_height="wrap_content"
                        android:text="@string/loading_screen_no_web"
                        android:id="@+id/web_desc"
                        android:textSize="20dp"/>

                <LinearLayout
                        android:layout_width="fill_parent"
                        android:layout_height="wrap_content"
                        android:weightSum="3"
                        android:layout_marginTop="10dp">

                    <Button
                            style="?android:attr/buttonStyleSmall"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:text="@string/loading_screen_no_web_settings"
                            android:id="@+id/web_wifi_settings"
                            android:layout_weight="1"/>

                    <Button
                            style="?android:attr/buttonStyleSmall"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:text="@string/loading_screen_no_web_settings2"
                            android:id="@+id/web_3g_settings"
                            android:layout_weight="1"/>

                    <Button
                            style="?android:attr/buttonStyleSmall"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:text="@string/loading_screen_no_web_ok"
                            android:id="@+id/web_fixed"
                            android:layout_weight="1"/>
                </LinearLayout>
            </LinearLayout>
        </LinearLayout>
    </ScrollView>

</RelativeLayout>

Bauen.Gradle:

buildscript {
    repositories {
        maven { url 'http://repo1.maven.org/maven2' }
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.4'
    }
}
apply plugin: 'android'

dependencies {
    compile files('libs/android-support-v4.jar', 'libs/google-play-services.jar')
}

android {
    compileSdkVersion 17
    buildToolsVersion "17.0.0"

    defaultConfig {
        minSdkVersion 11
        targetSdkVersion 17
        compileSdkVersion 17
    }
}
InformationsquelleAutor Jakub Mendyk | 2013-06-16
Schreibe einen Kommentar