Tìm kiếm tài liệu miễn phí

Hướng dẫn lập trình cơ bản với Android - Phần 23: Bài tập thực hành

Tài liệu cung cấp cho người học các kiến thức: Bài tập thực hành, sử dụng dữ liệu Content Provider từ 1 ứng dụng bất kỳ, chỉnh sửa code,... Hi vọng đây sẽ là một tài liệu hữu ích dành cho các bạn sinh viên đang theo học môn dùng làm tài liệu học tập và nghiên cứu. Mời các bạn cùng tham khảo chi tiết nội dung tài liệu.



Đánh giá tài liệu

0 Bạn chưa đánh giá, hãy đánh giá cho tài liệu này


  • 5 - Rất hữu ích 0

  • 4 - Tốt 0

  • 3 - Trung bình 0

  • 2 - Tạm chấp nhận 0

  • 1 - Không hữu ích 0

Mô tả

9. Test thử thành quả :
Mỗi content Provider gắn với 1 Uri cụ thể, như trên thì ContentProvider Book có
Uri là:
Mã:
com.vietandroid.provider.Books/books
Để test thử , vẫn trong Project Demo ContentProviderDemo , các bạn có thể thêm
2 Button Add Book và View All Books vào . Giao diện như sau:

Chúng ta sẽ thêm 1 Book vào CSDL thông qua URI này:
Mã:
public void addBook(String title)
{
ContentValues values = new ContentValues();
values.put(BookProvider.TITLE, title);
Uri uriInsert =
getContentResolver().insert(BookProvider.CONTENT_URI,
values);
if(uriInsert != null)
{
Toast.makeText(this, "Book's added",
Toast.LENGTH_SHORT).show();
}
Log.d(getClass().getSimpleName(),uriInsert.toStrin
g());
}
Kết quả :

Truy vấn toàn bộ dữ liệu Books có trong CSDL
Mã:
public void getAllBooks()
{
Uri uriGetListTitles =
Uri.parse("content://com.vietandroid.provider.Books/boo
ks");
Cursor c = managedQuery(uriGetListTitles, null,
null, null, "title desc");
if(c.moveToFirst()){
do{
String bookRecord = "ID = " +
c.getString(c.getColumnIndex(BookProvider._ID)) + "
Title = " +
c.getString(c.getColumnIndex(BookProvider.TITLE));

Toast.makeText(this, bookRecord ,
Toast.LENGTH_LONG).show();
}while(c.moveToNext());
}
}
Kết quả :
[IMGhttp://i123.photobucket.com/albums/o286/firewall7845/VietAndroid/21.png[/IMG]
3. Sử dụng dữ liệu Content Provider từ 1 ứng dụng bất kỳ
Ở Bài 6 mình đã đề cập về cơ sở dữ liệu SQLite Database, dạng dữ liệu này không
public cho các ứng dụng khác sử dụng, dữ liệu của ứng dụng nào thì ứng dụng đó
sử dụng.
1 lợi thế của dữ liệu dưới dạng Content Provider là public, tất cả các ứng dụng đều
có thể truy cập và sử dụng.
Phần này các bạn sử dụng ProjectDemo là ContentProviderDemo2 trong
sourcecode đi kèm ban đầu.
Demo này chỉ đơn giản là đọc lại toàn bộ dữ liệu trong CSDL Books được tạo
trong phần 2.
Như mình đã nói ở trên, chỉ cần lấy được Uri của ContentProvider cần lấy và các
tên của các trường dữ liệu thì chúng ta có thể truy vấn được hết.
Trong hàm onCreate() các bạn thêm vào:
Mã:
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Uri uriGetListTitles =
Uri.parse("content://com.vietandroid.provider.Books/boo
ks");
Cursor c = managedQuery(uriGetListTitles, null,
null, null, "title desc");
if(c != null)
{
if(c.moveToFirst()){
do{

String bookRecord = "ID = " +
c.getString(c.getColumnIndex("_id")) + " Title = " +
c.getString(c.getColumnIndex("title"));
Toast.makeText(this, bookRecord ,
Toast.LENGTH_LONG).show();
}while(c.moveToNext());
}
}
else {
Toast.makeText(this, "Database is emtpy",
Toast.LENGTH_SHORT).show();
}
}
2 trường dữ liệu ở đây được định nghĩa ở trên là "_id" và "title". Phần truy vấn vẫn
như vậy.
Kết quả :

Tài liệu cùng danh mục Kỹ thuật lập trình

Mạng không dây 2

Definition – Ad Hoc Network • Ad hoc is a Latin phrase which means "for this [purpose]" • The purpose is to interconnect computational nodes for information exchange i f ti h • I t Interconnection is being realized d ti i b i li d decentralized, without t li d ith t pre-existing infrastructure, e.g. routers, access points • Nodes participate in routing of packets, deciding dynamically, dynamically based on connectivity to neighbour nodes nodes. 11 12 .Definition – Sensor Network • Sensor from the Latin word sentire which means “to feel” or “to perceive” • A Sensor measures a physical quantity and...


Bài giảng JavaScript

Tham khảo bài viết 'bài giảng javascript', công nghệ thông tin, kỹ thuật lập trình phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả


Windows Phone Programming in C#

For each of the chapters there is a folder with the presentations and lab content for that chapter. Each presentation has a corresponding folder containing the demonstrations for that chapter. The demonstration slides contain step by step instructions in the slide notes. Not all the demonstrations have sample projects associated with them, for these demonstrations the program will be created during the presentation. The first 9 chapters also have a lab document which contains a set of lab exercises for that chapter. Some of the lab documents also have answer documents....


Lập trình hê thống (ĐH Cần Thơ) -3

Bài 4 – Nhập xuất số dạng BIN-HEX-DEC xdong DB 10, 13, ‘$’ kytu DB ? DSEG ENDS CSEG SEGMENT ASSUME CS:CSEG, DS:DSEG begin: MOV AX, DSEG MOV DS, AX inchuoi msg1 MOV AH, 01h INT 21h MOV kytu, AL ; cất ký tự nhận được inchuoi xdong inchuoi msg2 MOV BH, kytu ; Ký tự cần in CALL hex_out MOV AH, 02 ; in ra ký tự h sau số Hex MOV DL, ‘h’ INT 21h MOV AH, 01 INT 21h MOV AH, 4Ch ; thoat khỏi chương trình INT 21h hex_out PROC


C# Giới thiệu toàn tập part4

CHƯƠNG 5 : MẢNG VÀ BIẾN CON TRỎ 5.1/ Mảng : là tập hợp của các biến cùng kiểu được xếp liên tiếp nhau trong bộ nhớ trong. 5.1.1/ Mảng 1 chiều : a/ Khái niệm : [ ] Ví dụ : int a [5 ] ; = a [0] a[1] a[2] a [3] a [4] ( chỉ số chạy từ 0 đến n - 1 ). Char S [20] ; = 'A' 'B' ......


head first design patterns phần 8

Được rồi, chúng tôi đã nhìn thấy rằng đại diện cho nước giải khát của chúng tôi cộng với chương trình giá cả gia vị với thừa kế đã không làm việc rất tốt - chúng tôi nhận được vụ nổ lớp học, thiết kế cứng nhắc, hoặc chúng tôi có thêm chức năng để các lớp cơ sở là không thích hợp cho một số các lớp con.


Growing Object-Oriented Software, Guided by Tests- P9

Growing Object-Oriented Software, Guided by Tests- P9: Test-Driven Development (TDD) hiện nay là một kỹ thuật được thành lập để cung cấp các phần mềm tốt hơn nhanh hơn. TDD là dựa trên một ý tưởng đơn giản: các bài kiểm tra Viết cho code của bạn trước khi bạn viết đoạn code riêng của mình. Tuy nhiên, điều này "đơn giản" ý tưởng có kỹ năng và bản án để làm tốt. Bây giờ có một tài liệu hướng dẫn thiết thực để TDD mà sẽ đưa bạn vượt ra ngoài những khái niệm cơ bản. Vẽ trên một...


SQL server 2005 – Lập trình nâng cao part 10

Tham khảo tài liệu 'sql server 2005 – lập trình nâng cao part 10', công nghệ thông tin, kỹ thuật lập trình phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả


linux assembly language programming PHẦN 2

Một số lập trình, tuy nhiên, để mô tả một cách rõ ràng giá trị đối số giao thức. Điều này có thể là quan trọng cho các ứng dụng nhất định trong đó một giao thức cụ thể là cần thiết, và thay thế không được phép. Điều này cho phép bạn lựa chọn giao thức cuối cùng được sử dụng hơn là dựa vào ngày hôm nay của "hạt nhân của tháng".


LTHDT - Bài 05. Kết tập và kế thừa

Mục tiêu bài học • Giải thích về khái niệm tái sử dụng mã nguồn • Chỉ ra được bản chất, mô tả các khái niệm liên quan đến đến kết tập và kế thừa • So sánh kết tập và kế thừa • Biểu diễn được kết tập và kế thừa trên UML • Giải thích nguyên lý kế thừa và thứ tự khởi tạo, hủy bỏ đối tượng trong kế thừa • Áp dụng các kỹ thuật, nguyên lý về kết tập và kết thừa trên ngôn ngữ lập trình Java Tái sử dụng mã nguồn 2. Kết...


Tài liệu mới download

Quyết định số: 623/ĐVN/KTNĐ
  • 04/03/2016
  • 88.541
  • 901

Từ khóa được quan tâm

Có thể bạn quan tâm

LẬP TRÌNH TRÊN POCKET PC
  • 30/10/2010
  • 33.743
  • 706

Bộ sưu tập

Danh mục tài liệu