El examen integrado está a punto de realizarse. Pídale a alguien que escriba el código.
1. Hablemos de la composición de la Intención (es decir, de los atributos).
Respuesta:
Inteng consta de seis partes: nombre del componente, Acción, Datos, Categoría, Extra y Bandera.
2. Introduzca el método de almacenamiento de datos de Android.
Respuesta: 1.Almacenamiento de archivos, 2.Almacenamiento en tarjeta SD, 3.Almacenamiento de base de datos SQLite, 4.Almacenamiento de preferencias, 5.Almacenamiento de ContentProvider, 6.Almacenamiento de red.
3. Presente cómo ContentProvider realiza el intercambio de datos.
Respuesta:
Las aplicaciones Android comparten completamente sus datos con otras aplicaciones implementando la interfaz abstracta de ContentProvider.
ContentProvider comparte datos de manera similar a una tabla en una base de datos, lo que significa que ContentProvicer es como
una base de datos. El programa externo obtiene los datos compartidos por ContentProvider***, lo cual es similar a obtener datos de la base de datos.
Simplemente utiliza URI para representar la base de datos a la que se accederá. Los programas externos utilizan ContentResolver para operar los datos compartidos por ContentProvider***.
4. ¿Cuáles son las diferencias entre Actividad, Intención y Servicio en Android?
Respuesta:
1. La actividad es la principal responsable de interactuar con los usuarios y puede tener una interfaz. La actividad es el contenedor de Ver, es decir, la actividad es el contenedor de la interfaz del programa de Android. .
El ciclo de vida de la actividad está controlado por el sistema.
2. El servicio no interactúa con los usuarios y no tiene interfaz. Es el hilo de fondo del programa, similar a los servicios del sistema, y su ciclo de vida está controlado por el programa.
3. La intención es una descripción abstracta de la realización de una operación. No es una interfaz ni un hilo y no tiene concepto de ciclo de vida.
5. Hablemos del principio del modo MVC y su aplicación en Android. Android recomienda oficialmente que el desarrollo de aplicaciones adopte el modo MVC.
Respuesta: MVC es la abreviatura de Modelo, Vista y Controlador. El patrón MVC se utiliza principalmente para separar la interfaz del programa y el código de lógica empresarial del programa.
El modelo (modelo) se utiliza para manejar la lógica empresarial del programa y es la parte principal del programa.
Ver es responsable de interactuar con los usuarios y mostrar datos, y es la parte de la interfaz del programa.
El controlador (controlador) recibe la solicitud del usuario y luego llama al modelo y vista correspondientes para completar la solicitud del usuario. Es la parte de control del programa.
La realización específica del patrón MVC en los programas de Android es usar archivos xml para representar la interfaz del programa de Android, usar Actividad para implementar la capa de control, es decir, Controlador y
El modelo se implementa utilizando clases de Java.
6. Código clave para cambiar de una Actividad a otra Actividad
Respuesta:
Supongamos que hay dos Actividades, una es la Actividad Principal y la otra es la SubActividad.
El código para cambiar de MainActivity a SubActivity es:
Intent intent= new Intent(MainActivity.this, SubActivity.class);
intent.putExtra( " Activitymain", "hello sub");
startActivityForResult(intent, REQUEST_CODE);
//Devuelve el evento MainActivity de SubActivity
protected void onActivityResult( int requestCode, int resultCode, datos de intención)
{
//...
}
7. marcador a través de Intent El código clave y el permiso de apertura se organizan en la etiqueta Uses-permisssion
Respuesta:
Agregue permiso de usuario en AndroidManifest y declare el permiso de uso:
//Nota: Esto se debe a que realizar llamadas es un servicio en la parte inferior del teléfono móvil y está relacionado con el usuario. Privacidad y cargos por llamadas. Por lo tanto, el programa debe obtener los permisos pertinentes.
//clase pública MainActivity extiende la actividad
Suponiendo que el nombre de la actividad actual es MainActivity, el código clave para llamar al marcador del teléfono móvil es:
Intención de intención = new Intent(Intent.ACTION_CALL,Uri.parse("tel:"+"10086"));
MainActivity.this.startActivity(intent);
---- -------------------------------------------------- -------------------------------------------------- --
Preguntas de programación
1. Herede la implementación de SQLiteOpenHelper:
1) Cree una base de datos "diaryOpenHelper.db" con la versión 1,
2) Al mismo tiempo, cree una tabla "diary" (que contenga un _id clave principal y crece por sí sola, la longitud del tipo de carácter del tema es 100 y la longitud del tipo de carácter del contenido es 1000)
3) Cuando cambie la versión de la base de datos, elimine la tabla del diario y vuelva a crearla la mesa del diario.
La clase pública DBHelper extiende SQLiteOpenHelper
{
String dbName= "diaryOpenHelper.db";
int dbVersion= 1; p> p>
//Crear base de datos
public DBHelper (contexto contextual)
{
super (context,dbName,null,dbVersion); p>
}
//Al crear una base de datos, cree una tabla
public void onCreate (SQLiteDatabase db)
{
String sql ="crear diario de tabla(_id entero clave primaria autoincremento,";
sql+="topic varchar(100),content varchar(1000))";
db.execSQL (sql);
}
//Si la versión de la base de datos está actualizada
public void onUpgrade (SQLiteDatabasedb, int oldVersion, int newVersion)
{
String sql = "eliminar tabla si existe diario";
db.execSQL (sql);
this.onCreate ( db);
p>}
}
---------------------- ---- ---------------------------------------------- ---- --------------------------
2. Anote el código clave del servidor y cliente de Android Socket.
Servidor:
importar java.net.*;//Introducir clases relacionadas
clase pública MyServer
{
public static void main (String args[])
{
intentar
{
ServerSocket myss = new ServerSocket ( 8000);
System.out.println ("Escuchando...");
while (verdadero)
{
Socket client= myss.accept();
System.out.println ("Hay una conexión de cliente...");
client.close();//Desconectar
}
}
catch (Excepción e)
{
e.printStackTrace();
}
}
}
Cliente:
import java.net.Socket;//Introducción relacionada clases
//...Omita n líneas de código aquí...
clase pública ClientAC extiende la actividad
{
/ /...Omita 1000 líneas de código aquí...
public void ConnServer() //Conéctese al servidor
{
intente
{
Socket mysocket = new Socket ("127.0.0.1", 8000 //Crea un objeto Socket y conéctate al servidor
mysocket.close()); ; // Desconectar
}
catch (Excepción e)
{
e.printStackTrace();
}
}
}