CƠ SỞ DỮ LIỆU TRONG ANDROID

Bài viết chia sẻ database thân những vận dụng trong android vẫn hướng dẫn chúng ta có tác dụng nuốm làm sao để thực hiện tầm thường một database thân các vận dụng Android được thiết lập để lên và một thiết bị.

Bạn đang xem: Cơ sở dữ liệu trong android

Nlỗi các bạn vẫn biết, SQLite là một hệ quản ngại trị cửa hàng tài liệu giành riêng cho đồ vật di động cầm tay và Android là 1 trong giữa những nền tảng gốc rễ cung ứng SQLite.

Việc bọn họ tạo ra một vận dụng gồm database thì database đó chỉ mãi mãi bên trong một ứng dụng.

Điều kia có nghĩa là chỉ có áp dụng kia new được phnghiền truy vấn database mà nó tạo ra. Và database này sẽ bị xoá trường hợp áp dụng đó bị gỡ bỏ ngoài sản phẩm.

Có đều trường hòa hợp chúng ta mong mỏi một databaseđược tạo ra vì chưng một vận dụng với được share nhằm hầu như áp dụng khác thực hiện. Đó giải quyết và xử lý sự việc này, Android cung cấp Content Provider.

Chia sẻ database thân cácáp dụng trong android – Giới thiệu Content Provider

Content Provier tất cả thểgọi là 1 trong cơ sở dữ liệu nhưng mà làm việc kia tài liệu được share thân các vận dụng trong cùng một máy.

Hình bên dưới thể hiện trong và một lắp thêm tất cả 3 ứng dụng là App 1, App 2 và App 3. Trong số đó database được tạo ra ở App 1 và được chia sẻ sử dụng Content Provider để App 2, App 3 hoàn toàn có thể áp dụng.

Xem thêm: Giai Cấp Nào Lãnh Đạo Cuộc Cách Mạng Thời Kỳ Cận Đại? ? Các Cuộc Cách Mạng Tư Sản


*

Content URI

Để thực hiện một nội dung provider, các bạn đề nghị chỉ định và hướng dẫn một chuỗi hotline là content URI cùng cóđịnh hình nhỏng sau:

:////Bảng dưới trình bày chi tiết từng phần của nội dung URI

prefixLuôn luôn luôn là content
authorityChỉ định thương hiệu của content provider
data_typeXác định giao diện dữ liệu
idXác định bản ghi được yêu thương cầu

Một số ví dụ về content URI

Content URI dùng làm truy tìm vấn hộp tlỗi mang lại SMS

content://sms/inboxContent URI dùng làm tróc nã vấn lời nhắn tất cả mã bởi 5 của hộp tlỗi đến SMS

content://sms/inbox/5Content URI dùng để làm truy vấn những tin nhắn đã có được gửi

content://sms/sentContent URI dùng để làm truy nã vấn phần nhiều tin nhắnkhông được gửi

content://sms/draft

Chia sẻ database cáchầu như ứng dụng trong app android – Các bước thực hiện

Tóm tắt

Tạo một vận dụng thương hiệu PlatformManagement áp dụng một database thương hiệu platform.db. Trong vận dụng này có thể chấp nhận được người dùng nhập tên những hệ quản lý điều hành giành cho thiết bị di động cầm tay nlỗi Andoid, iOS, Windows Phone cùng lưu giữ vàoplatkhung.db.

Tạo một vận dụng khác thương hiệu MobileOS dùng để hiển thị danh sách hệ quản lý điều hành cơ mà ứng dụngPlatformManagement đang tạo.


*

Các bước thực hiện

Bước 1:Tạo một project tênPlatformManagement

Mngơi nghỉ Android Studio -> New -> New Project -> nhập Application name là PlatformManagement, hướng dẫn và chỉ định tlỗi mục đựng source code tại Project location -> New -> chọn “Phone and Tablet”, Minimum SDKtương xứng -> Next -> chọn “Empty Activity” -> Next -> Finish

1. Tạo một Java class và đặt tênDBHandling

import game android.content.Context;import apk.database.sqlite.SQLiteDatabase;import app android.database.sqlite.SQLiteOpenHelper;/** * Created by https://cheohanoi.vn */public class DBHandling extends SQLiteOpenHelper private final String TABLE_PLATFORM = "tbl_platform"; public DBHandling(Context c) super(c, "platform.db", null, 1);
Override
public void onCreate(SQLiteDatabase db) String sql = " CREATE TABLE " + TABLE_PLATFORM + " (id INTEGER PRIMARY KEY AUTOINCREMENT, " + " name TEXT NOT NULL);"; db.execSQL(sql);
Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) 2. Tạo Java class với đặt tênPlatformProvider

Quý Khách phát âm download code rất đầy đủ củaPlatformProvider.java

3. Mngơi nghỉ app/res/layout/activity_main.xml vàthêm1 EditText, 2 Button


*

4.Msinh hoạt app/java/core.android/MainActivity.java cùng bổ sung đoạn code được tô color đỏ(Trong số đó core.apk là tên package)

import apk.content.ContentValues;import game android.net.Uri;import app android.tư vấn.v7.tiện ích.AppCompatActivity;import android.os.Bundle;import game android.view.View;import game android.widget.EditText;import android.widget.Toast;public class MainActivity extends AppCompatActivity
Override
protected void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // Xử lý cho nút ít "Thêm" public void addPlatform(View view) ContentValues cv = new ContentValues(); cv.put(PlatformProvider.name, ((EditText) findViewById(R.id.tvName)).getText().toString()); Uri uri = getContentResolver().insert(PlatformProvider.CONTENT_URI, cv); Toast.makeText(this, "Thêm thành công!", Toast.LENGTH_SHORT).show(); // Xử lý mang đến nút ít "Thoát" public void exit(View v) finish(); 5.Msống app/manifests/AndroidManifest.xml và knhì báo provider trước thẻ đóng

6. Build và run ứng dụng; thêm 2 căn cơ là Android cùng iOS


*

Cách 2: Tạo một project không giống thương hiệu MobileOS

1. Mlàm việc app/res/layout/activity_main.xml vàthêm1 Button, 1TextView


*

2.Mnghỉ ngơi app/java/core.android/MainActivity.java và bổ sung đoạn code được đánh màu đỏ(Trong đó core.apk là tên package)

import android.support.v4.app.LoaderManager;import apk.tư vấn.v4.nội dung.CursorLoader;import android.support.v4.nội dung.Loader;import game android.database.Cursor;import app android.net.Uri;import game android.support.v7.ứng dụng.AppCompatActivity;import app android.os.Bundle;import game android.view.View;import app android.widget.TextView;public class MainActivity extends AppCompatActivity implements LoaderManager.LoaderCallbacks TextView tvResult; CursorLoader cl;
Override
protected void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); tvResult= (TextView) findViewById(R.id.result); // Xử lý đến nút ít "Hiển thị" public void display(View view) getSupportLoaderManager().initLoader(1, null, this);
Override
public Loader onCreateLoader(int id, Bundle args) cl = new CursorLoader(this, Uri.parse("content://core.android.PlatformProvider/pf"), null, null, null, null); return cursorLoader;
Override
public void onLoadFinished(Loader loader, Cursor data) data.moveToFirst(); StringBuilder sb = new StringBuilder(); while (!data.isAfterLast()) sb.append(" " + data.getString(data.getColumnIndex("id")) + "-" + data.getString(data.getColumnIndex("name"))); data.moveToNext(); resultView.setText(sb);
Override
public void onLoaderReset(Loader loader) 3. Build và run ứng dụng