project –> properties –> Java Build Path –> Add External Jars –> Trỏ đến đường dẫn và ccos chứa core.jar và chọn file này –> Open –> OK.
package com.example.qrdelux;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
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 StartAppActivity extends Activity {
TextView tvStatus;
TextView tvResult;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_start_app);
Button btnShowQRCode=(Button)findViewById(R.id.btnGenerateQR);
btnShowQRCode.setOnClickListener(showQRCode);
Button btnScanQRCode=(Button)findViewById(R.id.btnScanQR);
btnScanQRCode.setOnClickListener(scanQRCodeListener);
tvStatus = (TextView) findViewById(R.id.tvStatus);
tvResult = (TextView) findViewById(R.id.tvResult);
}
private OnClickListener showQRCode= new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
EditText qrInput=(EditText)findViewById(R.id.qrInput);
String qrInputText=qrInput.getText().toString();
Intent intent=new Intent(StartAppActivity.this,QRMainActivity.class);
intent.putExtra(“QR_INPUT”, qrInputText);
startActivity(intent);
}
};
private OnClickListener scanQRCodeListener=new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
/*Intent intent = new Intent(getApplicationContext(),
com.google.zxing.client.android.CaptureActivity.class);
startActivity(intent);*/
try {
Intent intent = new Intent(“com.google.zxing.client.android.SCAN”);
intent.putExtra(“SCAN_MODE”, “QR_CODE_MODE,PRODUCT_MODE”);
startActivityForResult(intent, 0);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
Toast.makeText(getApplicationContext(), “ERROR:” + e, 1).show();
}
}
};
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// TODO Auto-generated method stub
super.onActivityResult(requestCode, resultCode, data);
System.out.print(“O dau vay???”);
if (requestCode == 0) {
if (resultCode == RESULT_OK) {
System.out.print(“Where???”);
String contents = data.getStringExtra(“SCAN_RESULT”);
String format = data.getStringExtra(“SCAN_RESULT_FORMAT”);
tvStatus.setText(format);
tvResult.setText(contents);
// Handle successful scan
} else if (resultCode == RESULT_CANCELED) {
tvStatus.setText(“Press a button to start a scan.”);
tvResult.setText(“Scan cancelled.”);
}
}
}
}
Layout: (activity_start_app.xml)<LinearLayout xmlns:android=”
http://schemas.android.com/apk/res/android”
android:layout_width=”fill_parent”
android:layout_height=”fill_parent”
android:orientation=”vertical” >
<TextView
android:id=”@+id/textView1″
android:layout_width=”wrap_content”
android:layout_height=”wrap_content”
android:text=”@string/required_input”
android:textAppearance=”?android:attr/textAppearanceMedium” />
<EditText
android:id=”@+id/qrInput”
android:layout_width=”match_parent”
android:layout_height=”wrap_content”
android:ems=”10″ >
<requestFocus />
</EditText>
<Button
android:id=”@+id/btnGenerateQR”
android:layout_width=”wrap_content”
android:layout_height=”wrap_content”
android:text=”@string/generateQRCode” />
<Button
android:id=”@+id/btnScanQR”
android:layout_width=”wrap_content”
android:layout_height=”wrap_content”
android:text=”@string/scanQRCode” />
<TextView
android:id=”@+id/tvStatuslbl”
android:layout_width=”match_parent”
android:layout_height=”wrap_content”
android:layout_weight=”0.03″
android:text=”Status”
android:textAppearance=”?android:attr/textAppearanceLarge”
android:textColor=”@android:color/darker_gray” />
<TextView
android:id=”@+id/tvStatus”
android:layout_width=”match_parent”
android:layout_height=”wrap_content”
android:layout_weight=”1″
android:textColor=”@android:color/black”
android:textAppearance=”?android:attr/textAppearanceLarge” />
<TextView
android:id=”@+id/tvResultlbl”
android:layout_width=”match_parent”
android:layout_height=”wrap_content”
android:layout_weight=”0.03″
android:text=”Result”
android:textColor=”@android:color/darker_gray” />
<TextView
android:id=”@+id/tvResult”
android:layout_width=”match_parent”
android:layout_height=”wrap_content”
android:layout_weight=”2.95″
android:textColor=”@android:color/black”
/>
</LinearLayout>