版权声明:叮叮叮!!!! https://blog.csdn.net/Xuexx_520/article/details/83343943
新建两个项目,第一个项目里
首先创建数据库和表
package com.example.xxx.day18_sqlite;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
public class MHelper extends SQLiteOpenHelper {
public MHelper(Context context) {
super(context,"mydb", null, 1);
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("create table user (id integer primary key autoincrement,zh text,mm text)");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
}
}
package com.example.xxx.day18_sqlite;
import android.content.ContentProvider;
import android.content.ContentValues;
import android.content.UriMatcher;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.net.Uri;
import android.support.annotation.Nullable;
public class MProvider extends ContentProvider {
SQLiteDatabase db;
MHelper helper;
static {
UriMatcher uriMatcher=new UriMatcher(UriMatcher.NO_MATCH);
uriMatcher.addURI("com.xxx","user",100);
}
@Override
public boolean onCreate() {
helper=new MHelper(getContext());
db=helper.getReadableDatabase();
return false;
}
@Nullable
@Override
public Cursor query(Uri uri, String[] projection,String selection,String[] selectionArgs,String sortOrder) {
return db.query("user",null,null,null,null,null,null);
}
@Nullable
@Override
public String getType(Uri uri) {
return null;
}
@Nullable
@Override
public Uri insert(Uri uri,ContentValues values) {
db.insert("user",null,values);
return uri;
}
@Override
public int delete(Uri uri,String selection,String[] selectionArgs) {
return 0;
}
@Override
public int update(Uri uri,ContentValues values,String selection,String[] selectionArgs) {
return 0;
}
}
注意:在清单文件注册
<provider
android:authorities="com.xxx"
android:name="com.example.xxx.day18_sqlite.MProvider"
android:exported="true">
</provider>
在第二个项目里
点击注册跳转到注册页面Main2Activity
点击登录若登录成功跳转到Main3Activity
Mainactivity
package com.example.xxx.day18_sqlite2;
import android.content.ContentResolver;
import android.content.Intent;
import android.database.Cursor;
import android.net.Uri;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import com.example.xxx.day18_sqlite2.activity.Main2Activity;
import com.example.xxx.day18_sqlite2.activity.Main3Activity;
public class MainActivity extends AppCompatActivity {
private EditText zh;
private EditText mm;
private Button denglu;
private Button zhuce;
ContentResolver resolver;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initView();
setonclick();
}
private void setonclick() {
//注册
zhuce.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent in=new Intent(MainActivity.this,Main2Activity.class);
startActivity(in);
}
});
//登录
denglu.setOnClickListener(new View.OnClickListener() {
private String zh1;
private String mm1;
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Uri uri=Uri.parse("content://com.xxx/user");
resolver=getContentResolver();
Cursor cursor = resolver.query(uri, null, null, null, null);
while(cursor.moveToNext()){
zh1 = cursor.getString(cursor.getColumnIndex("zh"));
mm1= cursor.getString(cursor.getColumnIndex("mm"));
Log.e("xxx", zh1+mm1 );
if(zh1.equals(zh.getText().toString())&&mm1.equals(mm.getText().toString())){
Toast.makeText(MainActivity.this,"登录成功",Toast.LENGTH_SHORT).show();
Intent in=new Intent(MainActivity.this,Main3Activity.class);
startActivity(in);
}else{
Toast.makeText(MainActivity.this, "账号或者密码错误", Toast.LENGTH_SHORT).show();
}
}
}
});
}
private void initView() {
zh = findViewById(R.id.zh);
mm = findViewById(R.id.mm);
denglu = findViewById(R.id.denglu);
zhuce = findViewById(R.id.zhuce);
}
}
Main2Activity
注册页面
package com.example.xxx.day18_sqlite2.activity;
import android.content.ContentResolver;
import android.content.ContentValues;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import com.example.xxx.day18_sqlite2.MainActivity;
import com.example.xxx.day18_sqlite2.R;
public class Main2Activity extends AppCompatActivity {
private EditText zh;
private EditText mm;
private EditText twomm;
private Button zhuce;
ContentResolver resolver;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main2);
initView();
zhuce.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String name1=zh.getText().toString();
String pwd1=mm.getText().toString();
String pwd2=twomm.getText().toString();
if(name1.equals("")||pwd1.equals("")||pwd2.equals("")){
Toast.makeText(Main2Activity.this, "有没写的值", Toast.LENGTH_SHORT).show();
}
if(pwd1.equals(pwd2)){
//放入content
reselover(name1,pwd1);
Toast.makeText(Main2Activity.this, "注册成功", Toast.LENGTH_SHORT).show();
Intent in=new Intent(Main2Activity.this,MainActivity.class);
startActivity(in);
}else{
Toast.makeText(Main2Activity.this, "密码与确认密码不符", Toast.LENGTH_SHORT).show();
}
}
});
}
private void reselover(String zh,String mm) {
Uri uri=Uri.parse("content://com.xxx/user");
resolver=getContentResolver();
ContentValues cv=new ContentValues();
cv.put("zh",zh);
cv.put("mm",mm);
resolver.insert(uri, cv);
/* Cursor cursor = resolver.query(uri, null, null, null, null);
while(cursor.moveToNext()){
String zh1 = cursor.getString(cursor.getColumnIndex("zh"));
String mm1= cursor.getString(cursor.getColumnIndex("mm"));
Log.e("xxx", zh1+mm1 );
}*/
}
private void initView() {
zh = (EditText) findViewById(R.id.zh);
mm = (EditText) findViewById(R.id.mm);
twomm= (EditText) findViewById(R.id.twomm);
zhuce = (Button) findViewById(R.id.zhuce);
}
}