Tenga en cuenta las propiedades del objeto Intent:

Un objeto Intent es esencialmente un conjunto de información empaquetada. Puede ser información sobre componentes que están interesados ​​en Intent o puede ser información que le interesa al sistema Android
. Los atributos y funciones del objeto Intent:

El nombre del componente especifica el nombre del componente que procesa el objeto Intent.
Action Intent es una acción que se debe completar. La
categoría se usa para describir
el tipo de acción que se realizará. Datos Proporciona los datos
que se utilizarán en la acción. Extras Agrega información adjunta al componente Intent.
Banderas Indica al programa de Android cómo iniciar una. Actividad

Nombre del componente:

Atributo opcional, utilizado para establecer el nombre del componente del objeto Inetnet. Su valor de atributo es un objeto ComponentName. Para crear un ComponentName, debe especificar el nombre del paquete y el nombre de la clase. Esto puede determinar de forma única una clase de componente, de modo que la aplicación se pueda basar en Una clase de componente determinada inicia un componente específico.
Si está configurado, el objeto Intent se enviará a una instancia de la clase especificada. Si no está configurado, Android usa otra información en el Intent para ubicar el componente de destino apropiado. El nombre del componente se puede configurar mediante setComponent () , setClass () o setClassName () conjunto de métodos, y leer el método getComponent ()

método setComponent ():

El método setComponent () se usa para configurar el componente para Intent, el formato de sintaxis:

public Intent setComponent(ComponentName component)

nombre del componente componente que se configurará
al usar este método, debe crear objetos construidos de una manera android.content.ComponentName:
ComponentName (contexto de contexto, CLS Class <?>)
o ComponentName (String pkg, String cls)

El contexto es el objeto Contexto (contexto), que se puede especificar mediante "nombre de la actividad actual. Esto". El primer cls se usa para especificar el objeto de clase de la actividad que se abrirá, pkg se usa para especificar el nombre del paquete y el segundo cls se usa para especificar el inicio. El nombre completo de la clase (incluido el nombre del paquete)
del ejemplo de actividad :

Intent intent = new Intent();
ComponentName componentName = new ComponentName(MainActivity.this,DetailActivity.class);
intent.setComponent(componentName);

o

Intent intent = new Intent();
ComponentName componentName = new ComponentName(“com.mingrisoft”,”com.mingrisoft.DetailActivity”);
intent.setComponent(componentName);

método setClass ():

Se utiliza para configurar la clase de actividad que se abrirá para el intento, el formato de sintaxis:

public Intent setClass(Context packageContext,Class<?> cls)

PackageContext Contexto (contexto), puede usar "nombre de la Actividad actual.este" para especificar
el objeto
de clase de la Actividad que abrirá cls. Ejemplo:

Intent intent = new Intent();
			intent.setClass(MainActivity.this,DetailActivity.class);

método setClassName ():

Se utiliza para establecer el nombre de la actividad que se abrirá para la intención, formato de sintaxis:

public Intent setClassName(Context packageContext,String className)

método getComponent ():

Se utiliza para obtener los componentes relacionados con la intención, el formato de sintaxis:

public ComponentName getComponent()

El valor de retorno es el nombre del componente relacionado con el Intent, a través del cual se puede obtener el nombre del paquete y el nombre de la clase correspondiente al objeto Intent.
Ejemplo:

ComponentName componentName = getIntent().getComponent();
Log.i(“MainActivity”,”包名:” + componentName.getPackageName()” +类名”+componentName.getShortClassName());

Acción:

El atributo Action se utiliza para especificar la acción que se va a realizar. Determina en gran medida cómo se construye el Intent, especialmente los atributos Data (datos) y Extras (adicionales) que se introducirán más adelante. Debe definir todo el protocolo del objeto Intent que el componente puede manejar. En lugar de definir un solo atributo de Acción, en la clase Intención, se definen una serie de constantes de acción y los componentes de destino incluyen Actividad y Difusión.

Acción de actividad estándar (acción estándar utilizada para iniciar la actividad):

Descripción de la cadena correspondiente constante
1 ACTION_MAIN android.intent.action.MAIN comienza como la Actividad inicial, sin entrada y salida
de datos 2 ACTION_VIEW android.intent.action.VIEW muestra datos al usuario
3 ACTION_ATTACH_DATA android.intent.action.ATTACH_DATA se usa para indicar Algunos datos deben adjuntarse a otros lugares
4 ACTION_EDIT android.intent.action.EDIT Muestra los datos al usuario para editarlos
5 ACTION_PICK android.intent.action.PICK Seleccione un elemento de los datos y devuelva el elemento
6 ACTION_CHOOSER android.intent. action.CHOOSER muestra un selector de actividad
7 ACTION_GET_CONTENT android.intent.action.GET_CONTENT permite al usuario seleccionar un tipo específico de datos y devolverlo
8 ACTION_DIAL android.intent.action.DIAL Use el número proporcionado para realizar una llamada
9.ACTION_CALL android.intent .action.CALL utiliza los datos proporcionados para llamar a alguien
10.ACTION_SEND android.intent.action.SEND Envía un mensaje a alguien, el destinatario no está especificado
11.ACTION_SENDTO android.intent.action.SENDTO Envía un mensaje a alguien, recibe Designado
12.ACTION_ANSWER android.intent.action.ANSWER responde la llamada
13.ACTION_INSERT android.intent.action.INSERT inserta un elemento en blanco en el contenedor dado
14.ACTION_DELETE android.intent.action.DELETE elimina los datos proporcionados del contenedor
15.ACTION_RUN android.intent.action.RUN Datos de ejecución incondicionales
16.ACTION_SYNC android.intent.action.SYNC Realizar sincronización de datos
17.ACTION_PICK_ACTIVITY android.intent.action.PICK_ACTIVITY Seleccione la actividad del Intent dado y devuelva la clase seleccionada
18.ACTION_SEARCH android. intent.action.SEARCH ejecutar consulta
19.ACTION_WEB_SEARCH android.intent.action.WEB_SEARCH ejecutar consulta en línea
20.ACTION_FACTORY_TEST android.intent.action.FACTORY_TEST El principal punto de entrada para las pruebas de fábrica

Además de las acciones personalizadas, los desarrolladores también pueden personalizar las cadenas de acción para iniciar componentes en la aplicación. Estas cadenas recién definidas deben tener como prefijo el nombre del paquete de la aplicación.

La acción de un objeto Intent se establece mediante el método setAction () y se lee mediante el método getAction ()

método setAction ():

El método setAction () se utiliza para establecer la acción para Intent, el formato de sintaxis:

public Intent setAction(String action)

action El nombre de la acción que se establecerá

método getAction ():

El nombre de la acción utilizada para obtener la intención, formato de sintaxis:
public String getAction ()

Datos:

Por lo general, se usa para proporcionar los datos que se operarán en la acción. Puede ser un objeto URI, que generalmente incluye el tipo URI y MIME de los datos. Las diferentes acciones tienen diferentes especificaciones de datos, que utilizan el formato "tipo de datos: datos".

Ejemplo:

Visite el sitio web http: // dirección web
llame al teléfono: número de teléfono
para enviar mensajes de texto smsto:
búsqueda de número de recepción de SMS Archivo de tarjeta SD
archivo: /// sdcard / directorio o archivo
Mostrar mapa geo: coordenadas, coordenadas de
información de contacto contenido: // Contacto Información de la persona

Al hacer coincidir un Intent con un componente que puede procesar datos, es importante aclarar su tipo de datos (su tipo MIME) y URI. Por ejemplo, un componente que puede mostrar datos de imagen no debe llamarse para reproducir un archivo de audio.

En la mayoría de los casos, el tipo de datos se puede inferir del URI, especialmente el contenido: URI, que representan los datos ubicados en el dispositivo y están controlados por el proveedor de contenido, pero el tipo también se puede establecer explícitamente, el método específico Tener:

método setData ():

Se utiliza para establecer datos URI para Intent, formato de sintaxis:

public Intent setData(Uri data)

URI
de datos de los datos que se van a configurar Ejemplo:
Establecer los datos de contacto con id 1 en la información de contacto:
intent.setData(Uri.parse(content://”com.android.contacts/contacts/1”));

método setType ():

El tipo MIME utilizado para configurar los datos para la intención, el formato de sintaxis:

public Intent setType(String type)

tipo: el tipo MIME de los datos que se establecerán. Por ejemplo, si desea establecer el tipo como una foto, puede especificarlo como imagen / . Si desea establecer el tipo como un video, puede especificarlo como un video /
Ejemplo:

intent.setType(“image/*”);

setDataAndType () 方法:

Se utiliza para configurar los datos y su tipo MIME para el formato de sintaxis Intent:

public Intent setDataAndType(Uri data,String type)

datos: URI de los datos a configurar
tipo: MIME tipo de los datos a configurar

Ejemplo:
los datos especificados son la imagen img01.png en el directorio de imágenes de la tarjeta SD.

Uri uri = Uri.fromFile(new File(Environment.getExternalStorageDirectory().getPath() + “/pictures/img01.png”));
intent.setDataAndType(uri,”image/*”);

método putExtra (String, String):

Establecer el contenido del mensaje al enviar el mensaje
Cadena1: Establecer el tipo de mensaje que se enviará
Cadena2: Establecer el contenido del mensaje que se enviará

Dos métodos comúnmente utilizados al leer datos:

método getData ():

Se utiliza para obtener datos relacionados con la intención, formato de sintaxis:

public Uri getData()

Ejemplo:
para obtener el URI de los datos relacionados con la intención actual

Uri uri = intent.getData();

método getType ():

El tipo MIME utilizado para obtener los datos relacionados con el Intent, el formato de sintaxis:

public String getType()

Ejemplo:
para obtener el tipo de datos del objeto de intención actual

String type = intent.getType();

Categoría:

**这个属性用来对执行动作的类别进行描述,开发人员可以在一个Intent对象中指定任意数量的Category**

método addCategory ():

	**用来为Intent添加种类信息,语法格式:**

public Intent addCategory (categoría de cadena)
Ejemplo:
Para establecer Categoría como el escritorio del sistema:

Intent intent = new Intent();
intent.setAction(Intent.ACTION_MAIN);
intent.addCategory(“android.intent.category.HOME”);

método removeCategory ():

Se utiliza para eliminar el tipo de información especificado del Intent, el formato de sintaxis:

public void removeCategory(String category)

Ejemplo:
para eliminar la información de tipo establecida como escritorio del sistema:

intent.removeCategory(“android.intent.category.HOME”);

método getCategories ():

Se utiliza para obtener todo tipo de información relacionada con Intent, formato de sintaxis:

public Set<String> getCategories()
Ejemplo:
Obtener todo tipo de información relacionada con Intent

Set<String> set = intent.getCategories();

Extras (información adicional):

Se usa para agregar información adicional al componente Intent, generalmente en forma de pares clave-valor para guardar información adicional

método putExtras ():

Se utiliza para agregar información adicional al Intent, formato de sintaxis:

public Intent putExtras(Bundle extras)

extras: objeto Bundle que guarda información adicional
Ejemplo:
crear un objeto Bundle, guardar la información del nombre y agregarlo al objeto Intent mediante el método putExtras ():

Bundle bundle = new Bundle();
bundle.putCharSequence(“name”,”mr”); //保存名称信息
intent.putExtras(bundle);

método getExtras ():

Se utiliza para obtener información adicional en el Intent, el formato de sintaxis:

public Bundle getExtras()

El método utExtras () y el método getExtras () se utilizan normalmente para pasar valores entre varias actividades.

Banderas:

Se utiliza principalmente para indicar al programa de Android cómo iniciar una
tarea de actividad es una colección de componentes de actividad reunidos en un modo de pila. El
sistema predeterminado no incluye funciones de administración de tareas gráficas. Intente no utilizar el logotipo FLAG_ACTIVITY_MULTIPLE_TASK a menos que pueda proporcionar al usuario una forma -Puedes volver a la tarea iniciada

Método setFlags ():

Usado para establecer la bandera para el Intent, el uso múltiple reemplazará al anterior, el formato de sintaxis:

public Intent setFlags(int flags)

Ejemplo:
Para configurar una nueva actividad para que no se retenga en la pila del historial, una vez que el usuario la abandona, la actividad se cierra automáticamente:

intent.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);

método addFlags ():

Usado para agregar indicadores al Intent, el uso múltiple agregará múltiples indicadores, formato de sintaxis:

public Intent addFlags(int flags)

Ejemplo:
para configurar la actividad para que comience en una nueva tarea:

intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

Método getFlags ():

Se usa para obtener el indicador de intención, formato de sintaxis:

public int getFlags()

Ejemplo:
para guardar el logotipo en Intent y mostrarlo en el panel LogCat:

Log.i(“标志”,String.valueOf(intent.getFlags()));

Supongo que te gusta

Origin blog.csdn.net/qq_42823109/article/details/96857082
Recomendado
Clasificación