我试图将我的SQLite数据库保存在SD卡中,但它不能与我合作,我真的不知道问题是什么。我还读到我可以通过在AndroidManifest.xml中添加权限将数据库保存在SD卡中。无论如何,这是我的代码,我期待着你的回复:)。抱歉我的英语不好。
package com.example.barcodereader;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import com.google.zxing.integration.android.IntentIntegrator;
import com.google.zxing.integration.android.IntentResult;
import android.content.Intent;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends Activity implements OnClickListener {
private Button scanBtn, addBtn;
private TextView formatTxt, contentTxt;
private EditText productName, productDescription, isHalal;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// connecting views with our private variables
scanBtn = (Button) findViewById(R.id.scan_button);
addBtn = (Button) findViewById(R.id.add_record);
formatTxt = (TextView) findViewById(R.id.scan_format);
contentTxt = (TextView) findViewById(R.id.scan_content);
productName = (EditText) findViewById(R.id.product_name);
productDescription = (EditText) findViewById(R.id.product_descreption);
isHalal = (EditText) findViewById(R.id.halal);
scanBtn.setOnClickListener(this);
addBtn.setOnClickListener(this);
}
public void onClick(View v) {
// respond to clicks
if (v.getId() == R.id.scan_button) {
// scan
IntentIntegrator scanIntegrator = new IntentIntegrator(this);
scanIntegrator.initiateScan();
}
if (v.getId() == R.id.add_record) {
if (contentTxt.getText().toString().length() != 0) {
// create the database
DatabaseHandler dbHandler = new DatabaseHandler(this, null,
null, 1);
// create new product object and add it to database
Product newProduct = new Product(productName.getText()
.toString(), productDescription.getText().toString(),
contentTxt.getText().toString(), formatTxt.getText()
.toString(), isHalal.getText().toString());
dbHandler.addProduct(newProduct);
formatTxt.setText("");
contentTxt.setText("");
productName.setText("");
productDescription.setText("");
isHalal.setText("");
} else {
Toast.makeText(MainActivity.this, "Please scan a product",
Toast.LENGTH_SHORT).show();
}
}
}
public void onActivityResult(int requestCode, int resultCode, Intent intent) {
// retrieve scan result
IntentResult scanningResult = IntentIntegrator.parseActivityResult(
requestCode, resultCode, intent);
if (scanningResult != null) {
// we have a result
String scanContent = scanningResult.getContents();
String scanFormat = scanningResult.getFormatName();
formatTxt.setText("FORMAT: " + scanFormat);
contentTxt.setText("CONTENT: " + scanContent);
} else {
Toast toast = Toast.makeText(getApplicationContext(),
"No scan data received!", Toast.LENGTH_SHORT);
toast.show();
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}