package com.szy.provider;
import android.app.Activity;
import android.content.ContentResolver;
import android.content.ContentValues;
import android.database.Cursor;
import android.net.Uri;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class MainActivity extends Activity
{
private static final String TAG = "MainActivity";
private static final int ONE = 1;
private static final int TWO = 2;
private Button btnAdd1;
private Button btnAdd2;
private Button btnUpdate1;
private Button btnUpdate2;
private Button btnQuery1;
private Button btnQuery2;
private Button btnDel1;
private Button btnDel2;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
btnDel1=(Button)findViewById(R.id.btnDel1);
btnDel2=(Button)findViewById(R.id.btnDel2);
btnAdd1=(Button)findViewById(R.id.btnAdd1);
btnAdd2=(Button)findViewById(R.id.btnAdd2);
btnUpdate1=(Button)findViewById(R.id.btnUpdate1);
btnUpdate2=(Button)findViewById(R.id.btnUpdate2);
btnQuery1=(Button)findViewById(R.id.btnQuery1);
btnQuery2=(Button)findViewById(R.id.btnQuery2);
btnAdd1.setOnClickListener(listener);
btnAdd2.setOnClickListener(listener);
btnUpdate1.setOnClickListener(listener);
btnUpdate2.setOnClickListener(listener);
btnQuery1.setOnClickListener(listener);
btnQuery2.setOnClickListener(listener);
btnDel1.setOnClickListener(listener);
btnDel2.setOnClickListener(listener);
}
private OnClickListener listener = new OnClickListener()
{
@Override
public void onClick(View v)
{
switch (v.getId())
{
case R.id.btnAdd1:
add(ONE);
break;
case R.id.btnAdd2:
add(TWO);
break;
case R.id.btnUpdate1:
update(ONE);
break;
case R.id.btnUpdate2:
update(TWO);
break;
case R.id.btnQuery1:
query(ONE);
break;
case R.id.btnQuery2:
query(TWO);
break;
case R.id.btnDel1:
delete(ONE);
break;
case R.id.btnDel2:
delete(TWO);
break;
default:
break;
}
}
};
protected void delete(int type)
{
ContentResolver contentResolver = getContentResolver();
Uri url = null;
String where = "";
String[] selectionArgs = null;
switch (type)
{
case ONE:
url = Uri.parse("content://com.szy.provider.studentprovider/student");
where = "sid in (?,?)";
selectionArgs = new String[]
{ "1", "2" };
contentResolver.delete(url, where, selectionArgs);
break;
case TWO:
url = Uri.parse("content://com.szy.provider.studentprovider/student/2");
// where = "age = ?";
// selectionArgs = new String[]{"23"};
where = null;
selectionArgs = null;
contentResolver.delete(url, where, selectionArgs);
break;
}
}
protected void query(int type)
{
ContentResolver contentResolver = getContentResolver();
Uri url = null;
String[] projection = new String[] {"sid","name","age"};
String selection = "";
String[] selectionArgs = null;
String sortOrder = "";
Cursor cursor = null;
switch (type)
{
case ONE:
url = Uri.parse("content://com.szy.provider.studentprovider/student");
selection = "sid < ?";
selectionArgs = new String[]{"3"};
cursor =contentResolver.query(url, projection, selection, selectionArgs, sortOrder);
while (cursor.moveToNext())
{
Log.i(TAG, "sid="+cursor.getInt(0)+"name="+cursor.getString(1)+"age="+cursor.getShort(2));
}
break;
case TWO:
url = Uri.parse("content://com.szy.provider.studentprovider/student/1");
cursor =contentResolver.query(url, projection, selection, selectionArgs, sortOrder);
while (cursor.moveToNext())
{
Log.i(TAG, "sid="+cursor.getInt(0)+"name="+cursor.getString(1)+"age="+cursor.getShort(2));
}
break;
}
}
protected void update(int type)
{
ContentResolver contentResolver = getContentResolver();
Uri url = null;
ContentValues values = new ContentValues();
String where = "";
String[] selectionArgs = null;
switch (type)
{
case ONE:
url = Uri.parse("content://com.szy.provider.studentprovider/student");
values.put("name", "Updated");
values.put("age", "23");
where = "sid = ?";
selectionArgs = new String[]{"1"};
contentResolver.update(url, values, where, selectionArgs);
break;
case TWO:
url = Uri.parse("content://com.szy.provider.studentprovider/student/2");
values.put("name", "Updated");
values.put("age", "23");
where = "name = ?";
selectionArgs = new String[]{"kuka"};
contentResolver.update(url, values, where, selectionArgs);
break;
}
}
protected void add(int type)
{
ContentResolver contentResolver = getContentResolver();
Uri url = null;
ContentValues values = new ContentValues();
switch (type)
{
case ONE:
url = Uri.parse("content://com.szy.provider.studentprovider/student");
values.put("name", "libai");
values.put("age", "100");
Log.i(TAG, contentResolver.insert(url, values).toString());
break;
case TWO:
url = Uri.parse("content://com.szy.provider.studentprovider/student/1");
values.put("name", "dufu");
values.put("age", "101");
Log.i(TAG, contentResolver.insert(url, values).toString());
break;
}
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
Android应用源码之30.Content_Providers(2)-IT计算机-毕业设计.zip (59个子文件)
Android应用源码之30.Content_Providers(2)
30.Content Providers(2)
src
22.Content Provider
bin
classes.dex 6KB
com
szy
provider
MainActivity.class 5KB
MainActivity$1.class 1KB
R$layout.class 388B
R$id.class 606B
R$drawable.class 394B
R$attr.class 334B
R.class 517B
R$string.class 421B
resources.ap_ 11KB
22.Content Provider.apk 15KB
res
drawable-ldpi
icon.png 2KB
drawable-hdpi
icon.png 4KB
values
strings.xml 179B
drawable-mdpi
icon.png 3KB
layout
main.xml 1KB
assets
default.properties 362B
gen
com
szy
provider
R.java 1KB
proguard.cfg 1KB
src
com
szy
provider
MainActivity.java 5KB
.project 855B
.classpath 280B
AndroidManifest.xml 682B
18.SQLite
bin
classes.dex 14KB
com
szy
sqlite
dao
StudentDAO2.class 4KB
DBOpenHelper.class 1KB
StudentDAO.class 4KB
model
Student.class 1KB
provider
StudentContentProvider.class 5KB
activity
MainActivity.class 527B
R$layout.class 409B
R$drawable.class 415B
StudentDAO2Test.class 3KB
R$attr.class 355B
R.class 519B
R$string.class 442B
StudentDAOTest.class 3KB
resources.ap_ 10KB
18.SQLite.apk 19KB
res
drawable-ldpi
icon.png 2KB
drawable-hdpi
icon.png 4KB
values
strings.xml 173B
drawable-mdpi
icon.png 3KB
layout
main.xml 382B
test
com
szy
sqlite
activity
StudentDAOTest.java 2KB
StudentDAO2Test.java 2KB
assets
default.properties 362B
gen
com
szy
sqlite
activity
R.java 645B
proguard.cfg 1KB
src
com
szy
sqlite
dao
StudentDAO.java 3KB
DBOpenHelper.java 1KB
StudentDAO2.java 3KB
model
Student.java 808B
provider
StudentContentProvider.java 5KB
activity
MainActivity.java 347B
.project 845B
.classpath 323B
AndroidManifest.xml 1KB
doc
30.Content Providers(2).ppt 228KB
video
共 59 条
- 1
资源评论
芝麻粒儿
- 粉丝: 5w+
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功