Android - Integración de LinkedIn

Android permite que su aplicación se conecte a Linkedin y comparta datos o cualquier tipo de actualizaciones en Linkedin. Este capítulo trata sobre la integración de Linkedin en su aplicación.

Hay dos formas de integrar Linkedin y compartir algo de su aplicación. Estas formas se enumeran a continuación.

  • SDK de Linkedin (Scribe)

  • Intención Compartir

Integrando Linkedin SDK

Esta es la primera forma de conectarse con Linkedin. Debe registrar su aplicación y luego recibir un ID de aplicación, y luego debe descargar el SDK de Linkedin y agregarlo a su proyecto. Los pasos se enumeran a continuación.

Registro de su aplicación

Cree una nueva aplicación de Linkedin en https://www.linkedin.com/secure/developer. Haga clic en agregar nueva aplicación. Se muestra a continuación:

Ahora complete el nombre de su aplicación, la descripción y la URL de su sitio web. Se muestra a continuación:

Si todo funciona bien, recibirá una clave API con el secreto. Simplemente copie la clave API y guárdela en algún lugar. Se muestra en la imagen a continuación:

Descargando SDK e integrándolo

Descarga Linkedin sdk aquí . Copie el jar scribe-1.3.0.jar en la carpeta libs de su proyecto.

Publicar actualizaciones en la aplicación de Linkedin

Una vez que todo esté completo, puede ejecutar las muestras de Linkedin que se pueden encontrar aquí .

Intención compartida

Intent share se utiliza para compartir datos entre aplicaciones. En esta estrategia, no manejaremos las cosas del SDK, pero dejaremos que la aplicación Linkedin lo maneje. Simplemente llamaremos a la aplicación de Linkedin y pasaremos los datos para compartir. De esta forma, podemos compartir algo en Linkedin.

Android proporciona una biblioteca de intenciones para compartir datos entre actividades y aplicaciones. Para usarlo como intención de compartir, tenemos que especificar el tipo de intención de compartirACTION_SEND. Su sintaxis se da a continuación:

Intent shareIntent = new Intent();
shareIntent.setAction(Intent.ACTION_SEND);

Lo siguiente que debe hacer es definir el tipo de datos que se transmitirán y luego pasar los datos. Su sintaxis se da a continuación:

shareIntent.setType("text/plain");
shareIntent.putExtra(Intent.EXTRA_TEXT, "Hello, from tutorialspoint");
startActivity(Intent.createChooser(shareIntent, "Share your thoughts"));

Aparte de estos métodos, hay otros métodos disponibles que permiten el manejo de intenciones. Se enumeran a continuación:

No Señor Método y descripción
1

addCategory(String category)

Este método agrega una nueva categoría a la intención.

2

createChooser(Intent target, CharSequence title)

Función de conveniencia para crear una intención ACTION_CHOOSER

3

getAction()

Este método recupera la acción general a realizar, como ACTION_VIEW

4

getCategories()

Este método devuelve el conjunto de todas las categorías en intent.nt y el evento de escala actual

5

putExtra(String name, int value)

Este método agrega datos extendidos a la intención.

6

toString()

Este método devuelve una cadena que contiene una descripción concisa y legible por humanos de este objeto.

Ejemplo

Aquí hay un ejemplo que demuestra el uso de IntentShare para compartir datos en Linkedin. Crea una aplicación básica que te permite compartir texto en Linkedin.

Para experimentar con este ejemplo, puede ejecutarlo en un dispositivo real o en un emulador.

Pasos Descripción
1 Utilizará Android Studio para crear una aplicación de Android en un paquete com.example.sairamkrishna.myapplication.
2 Modifique el archivo src / MainActivity.java para agregar el código necesario.
3 Modifique res / layout / activity_main para agregar los componentes XML respectivos
4 Ejecute la aplicación y elija un dispositivo Android en ejecución e instale la aplicación en él y verifique los resultados

A continuación se muestra el contenido del archivo de actividad principal modificado MainActivity.java.

package com.example.sairamkrishna.myapplication;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;

import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import java.io.FileNotFoundException;
import java.io.InputStream;

public class MainActivity extends AppCompatActivity {
   private ImageView img;

   protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);

      img = (ImageView) findViewById(R.id.imageView);
      Button b1 = (Button) findViewById(R.id.button);

      b1.setOnClickListener(new View.OnClickListener() {
         @Override
         public void onClick(View v) {
            Intent sharingIntent = new Intent(Intent.ACTION_SEND);
            Uri screenshotUri = Uri.parse("android.
               resource://comexample.sairamkrishna.myapplication/*");

            try {
               InputStream stream = getContentResolver().openInputStream(screenshotUri);
            } catch (FileNotFoundException e) {
               // TODO Auto-generated catch block
               e.printStackTrace();
            }

            sharingIntent.setType("image/jpeg");
            sharingIntent.putExtra(Intent.EXTRA_STREAM, screenshotUri);
            startActivity(Intent.createChooser(sharingIntent, "Share image using"));
         }
      });
   }
}

A continuación se muestra el contenido modificado del xml res/layout/activity_main.xml.

En el siguiente código abc indica el logo de tutorialspoint.com
<?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:layout_width="match_parent"
   android:layout_height="match_parent" 
   android:paddingLeft="@dimen/activity_horizontal_margin"
   android:paddingRight="@dimen/activity_horizontal_margin"
   android:paddingTop="@dimen/activity_vertical_margin"
   android:paddingBottom="@dimen/activity_vertical_margin" 
   tools:context=".MainActivity">
   
   <TextView
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:id="@+id/textView"
      android:layout_alignParentTop="true"
      android:layout_centerHorizontal="true"
      android:textSize="30dp"
      android:text="Linkedin Share" />
      
   <TextView
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="Tutorials Point"
      android:id="@+id/textView2"
      android:layout_below="@+id/textView"
      android:layout_centerHorizontal="true"
      android:textSize="35dp"
      android:textColor="#ff16ff01" />
      
   <ImageView
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:id="@+id/imageView"
      android:layout_below="@+id/textView2"
      android:layout_centerHorizontal="true"
      android:src="@drawable/logo"/>
      
   <Button
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="Share"
      android:id="@+id/button"
      android:layout_marginTop="61dp"
      android:layout_below="@+id/imageView"
      android:layout_centerHorizontal="true" />
      
</RelativeLayout>

A continuación se muestra el contenido de AndroidManifest.xml archivo.

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
   package="com.example.sairamkrishna.myapplication" >
   <application
      android:allowBackup="true"
      android:icon="@mipmap/ic_launcher"
      android:label="@string/app_name"
      android:theme="@style/AppTheme" >
      
      <activity
         android:name=".MainActivity"
         android:label="@string/app_name" >
         
         <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
         </intent-filter>
         
      </activity>
      
   </application>
</manifest>

Intentemos ejecutar su aplicación. Supongo que ha conectado su dispositivo móvil Android real con su computadora. Para ejecutar la aplicación desde Android Studio, abra uno de los archivos de actividad de su proyecto y haga clic en el icono Ejecutar de la barra de herramientas. Antes de iniciar su aplicación, Android Studio mostrará la siguiente ventana para seleccionar una opción donde desea ejecutar su aplicación de Android.

Seleccione su dispositivo móvil como una opción y luego verifique su dispositivo móvil que mostrará su pantalla predeterminada -

Ahora solo toque el logotipo de la imagen y verá una lista de proveedores de acciones.

Ahora solo seleccione Linkedin de esa lista y luego escriba cualquier mensaje. Se muestra en la imagen a continuación:

Ahora muestra información actualizada