package cn.wch.ch34xuartdriver;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Timer;
import java.util.TimerTask;
import cn.wch.ch34xuartdemo.R;
import android.os.Bundle;
import android.os.Environment;
import android.os.Handler;
import android.os.Message;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.SharedPreferences;
import android.hardware.usb.UsbManager;
import android.view.View;
import android.view.WindowManager;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemSelectedListener;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Spinner;
import android.widget.Toast;
import android.util.Log;
import cn.wch.ch34xuartdriver.utils.FileUtil;
import cn.wch.ch34xuartdriver.utils.PermissionUtils;
public class MainActivity extends Activity {
public static final String TAG = "cn.wch.wchusbdriver";
private static final String ACTION_USB_PERMISSION = "cn.wch.wchusbdriver.USB_PERMISSION";
public readThread handlerThread;
protected final Object ThreadLock = new Object();
private EditText readText;
private Spinner baudSpinner,stopSpinner,dataSpinner,paritySpinner,sp_file;
private boolean isOpen;
private Handler handler;
private int retval;
private MainActivity activity;
private Button writeButton, openButton, clearButton,bthRefresh,btnBoot;
private EditText txt_rec;
private MyBtnClicker myBtnClicker=new MyBtnClicker();
public byte[] writeBuffer,readBuffer;
public int actualNumBytes, numBytes,status;
public byte count;
public byte writeIndex = 0;
public byte readIndex = 0;
public int baudRate;
public byte stopBit,dataBit,parity,flowControl;
public boolean isConfiged = false;
public boolean READ_ENABLE = false;
public SharedPreferences sharePrefSettings;
public String act_string,mPath,Str,path;;
public int totalrecv;
public byte[] datatosend; public FileInputStream fs;
int packet_zheng,packet_yu,packet_send=0; boolean boot=false;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
MyApp.driver = new CH34xUARTDriver(
(UsbManager) getSystemService(Context.USB_SERVICE), this,
ACTION_USB_PERMISSION);
PermissionUtils.verifyStoragePermissions(this);
mPath = Environment.getExternalStorageDirectory().getAbsolutePath().toString() "/" "iap" "/";
File floder=new File(mPath);
if(!floder.exists())
{
floder.mkdirs();
Log.d(TAG, "onCreate: iap文件夹创建成功");
}
else
{
Log.d(TAG, "onCreate: iap文件夹已经存在");
}
bindID();
bindListener();
initUI();
if (!MyApp.driver.UsbFeatureSupported())// 判断系统是否支持USB HOST
{
Dialog dialog = new AlertDialog.Builder(MainActivity.this)
.setTitle("提示")
.setMessage("您的手机不支持USB HOST,请更换其他手机再试!")
.setPositiveButton("确认",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface arg0,
int arg1) {
System.exit(0);
}
}).create();
dialog.setCanceledOnTouchOutside(false);
dialog.show();
}
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);// 保持常亮的屏幕的状态
writeBuffer = new byte[512];
readBuffer = new byte[512];
isOpen = false;
// writeButton.setEnabled(false);
activity = this;
handler = new Handler() {
public void handleMessage(Message msg) {
readText.setText((String) msg.obj);
// readText.append((String) msg.obj);
}
};
}
public void onResume() {
super.onResume();
if(!MyApp.driver.isConnected()) {
int retval = MyApp.driver.ResumeUsbPermission();
if (retval == 0) {
} else if (retval == -2) {
Toast.makeText(MainActivity.this, "获取权限失败!",
Toast.LENGTH_SHORT).show();
}
}
}
//处理界面
private void initUI() {
openButton.setEnabled(true);
btnBoot.setEnabled(false);
writeButton.setEnabled(false);
//--------------------sp_file------------------------------
sp_file=(Spinner)findViewById(R.id.sp_file);
refreshSpinner();
//---------------------baudRate---------------------------
baudSpinner = (Spinner) findViewById(R.id.baudRateValue);
ArrayAdapter<CharSequence> baudAdapter = ArrayAdapter
.createFromResource(this, R.array.baud_rate,
R.layout.my_spinner_textview);
baudAdapter.setDropDownViewResource(R.layout.my_spinner_textview);
baudSpinner.setAdapter(baudAdapter);
baudSpinner.setGravity(0x10);
baudSpinner.setSelection(9);
/* by default it is 115200 */
baudRate = 115200;
//-------------------------------------------------------
/* ---------------------stop bits---------------------- */
stopSpinner = (Spinner) findViewById(R.id.stopBitValue);
ArrayAdapter<CharSequence> stopAdapter = ArrayAdapter
.createFromResource(this, R.array.stop_bits,
R.layout.my_spinner_textview);
stopAdapter.setDropDownViewResource(R.layout.my_spinner_textview);
stopSpinner.setAdapter(stopAdapter);
stopSpinner.setGravity(0x01);
/* default is stop bit 1 */
stopBit = 1;
/* ----------------------data bits----------------------- */
dataSpinner = (Spinner) findViewById(R.id.dataBitValue);
ArrayAdapter<CharSequence> dataAdapter = ArrayAdapter
.createFromResource(this, R.array.data_bits,
R.layout.my_spinner_textview);
dataAdapter.setDropDownViewResource(R.layout.my_spinner_textview);
dataSpinner.setAdapter(dataAdapter);
dataSpinner.setGravity(0x11);
dataSpinner.setSelection(3);
/* default data bit is 8 bit */
dataBit = 8;
/* parity */
paritySpinner = (Spinner) findViewById(R.id.parityValue);
ArrayAdapter<CharSequence> parityAdapter = ArrayAdapter
.createFromResource(this, R.array.parity,
R.layout.my_spinner_textview);
parityAdapter.setDropDownViewResource(R.layout.my_spinner_textview);
paritySpinner.setAdapter(parityAdapter);
paritySpinner.setGravity(0x11);
/* default is none */
parity = 0;
/* set the adapter listeners for baud */
baudSpinner.setOnItemSelectedListener(new MyOnBaudSelectedListener());
/* set the adapter listeners for stop bits */
stopSpinner.setOnItemSelectedListener(new MyOnStopSelectedListener());
/* set the adapter listeners for data bits */
dataSpinner.setOnItemSelectedListener(new MyOnDataSelectedListener());
/* set the adapter listeners for parity */
paritySpinner.setOnItemSelectedListener(new MyOnParitySelectedListener());
return;
}
private void refreshSpinner() {
// 获得指定目录下面的所有文本文件
ArrayList<File> fileAlllist = FileUtil.getFileList(mPath, new String[]{".bin"});
if (fileAlllist.size() > 0) {
fileArray = new String[fileAlllist.size()];
for (int i = 0; i < fileAlllist.size(); i ) {
fileArray[i] = fileAlllist.get(i).getName();
}
ArrayAdapter<String> typeAdapter = new ArrayAdapter<String>(this,
R.layout.item_select, fileArray);
typeAdapter.setDropDownViewResource(R.layout.item_dropdown);
sp_file.setPrompt("请选择文本文件");
sp_file.setAdapter(typeAdapter);
sp_file.setSelection(0);
sp_file.setOnItemSelectedListener(new FileSelectedListener());
} else {
fileArray = null;
fileArray = new String[1];
fileArray[0] = "";
ArrayAdapter<String> typeAdapter = new ArrayAdapter<String>(this,
R.layout.item_select, fileArray);
sp_file.setPrompt(null);
sp_file.setAdapter(typeAdapter);
sp_file.setOnItemSelectedListener(null);
}
}
private void bindID(){
// readText = (EditText) findViewById(R.id.ReadValues);
txt_rec=(EditText)findViewById(R.id.txt_rec);
writeButton = (Button) findViewById(R.id.WriteButton);
openButton = (Button) findViewById(R.id.open_device);
clearButton = (Button) findViewById(R.id.clearButton);
btnBoot=(Button)findViewById(R.id.btn_boot);
bthRefresh=(Button)findViewById(R.id.btn_refresh);
}
private void bindListener(){
writeButton.setOnClickListener(myBtnClicker);
openButton.setOnClickListener(myBtnClicker);
clearButton.setOnClickListener(myBtnClicker);
btnBoot.setOnClickListener(myBtnClicker);
bthRefresh.setOnClickListener(myBtnClicker);
}
private class MyBtnClicker implements View.OnClickListener{
@Override
public void onClick(View view){
switch (view.getId()){
case R.id.open_device:
{
//打开流程主要步骤为ResumeUsbList,UartInit
if (!isOpen) {
retval = MyApp.driver.ResumeUsbList();
if (retval == -1)// ResumeUsbList方法用于枚举CH34X设备以及打开相关设备
{
Toast.makeText(MainActivity.this, "打开设备失败!",
Toast.LENGTH_SHORT).show();
MyApp.driver.CloseDevice();
} else if (retval == 0){
if (!MyApp.driver.UartInit()) {//对串口设备进行初始化操作
Toast.makeText(MainActivity.this, "设备初始化失败!",
Toast.LENGTH_SHORT).show();
Toast.makeText(MainActivity.this, "打开"
"设备失败!",
Toast.LENGTH_SHORT).show();
return;
}
Toast.makeText(MainActivity.this, "打开设备成功!",
Toast.LENGTH_SHORT).show();
MyApp.driver.SetConfig(baudRate, dataBit, stopBit, parity,//配置串口波特率,函数说明可参照编程手册
flowControl);
isOpen = true;
openButton.setText("Close");
btnBoot.setEnabled(true);
new readThread().start();//开启读线程读取串口接收的数据
} else {
AlertDialog.Builder builder = new AlertDialog.Builder(activity);
builder.setIcon(R.drawable.icon);
builder.setTitle("未授权限");
builder.setMessage("确认退出吗?");
builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
System.exit(0);
}
});
builder.setNegativeButton("返回", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
}
});
builder.show();
}
} else {
openButton.setText("Open");
writeButton.setEnabled(false);
btnBoot.setEnabled(false);
isOpen = false;
try {
Thread.sleep(200);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
MyApp.driver.CloseDevice();
totalrecv = 0;
}
}
break;
case R.id.btn_clear:
{
totalrecv = 0;
readText.setText("");
}
break;
case R.id.WriteButton:
{
try {
txt_rec.setText("");
fs = new FileInputStream(path);
Str="文件共" String.valueOf(fs.available()) "字节" "\n";
packet_send=0;
refreshLogView(Str);
datatosend=new byte[3];
datatosend[0]=(byte)0x44; datatosend[1]=(byte)0x4d;
datatosend[2]=(byte)0x46;
int retval = MyApp.driver.WriteData(datatosend, datatosend.length);
if (retval < 0)
Toast.makeText(MainActivity.this, "写失败!",
Toast.LENGTH_SHORT).show();
}
catch (IOException e)
{
e.printStackTrace();
}
}
break;
case R.id.btn_boot:
{
datatosend=new byte[7];
datatosend[0]=(byte)0xe1; datatosend[1]=(byte)0xe2; datatosend[2]=(byte)0xe3;
datatosend[3]=(byte)0x1e; datatosend[4]=(byte)0x2e; datatosend[5]=(byte)0x0d;
datatosend[6]=(byte)0x0a;
int retval = MyApp.driver.WriteData(datatosend, datatosend.length);
if (retval < 0)
Toast.makeText(MainActivity.this, "写失败!",
Toast.LENGTH_SHORT).show();
}
break;
}
}
}
private String[] fileArray;
class FileSelectedListener implements AdapterView.OnItemSelectedListener {
public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
path = mPath fileArray[arg2];
}
public void onNothingSelected(AdapterView<?> arg0) {
}
}
public class MyOnBaudSelectedListener implements OnItemSelectedListener {
@Override
public void onItemSelected(AdapterView<?> parent, View view,
int position, long id) {
baudRate = Integer.parseInt(parent.getItemAtPosition(position)
.toString());
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
}
public class MyOnStopSelectedListener implements OnItemSelectedListener {
@Override
public void onItemSelected(AdapterView<?> parent, View view,
int position, long id) {
stopBit = (byte) Integer.parseInt(parent
.getItemAtPosition(position).toString());
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
}
public class MyOnDataSelectedListener implements OnItemSelectedListener {
@Override
public void onItemSelected(AdapterView<?> parent, View view,
int position, long id) {
dataBit = (byte) Integer.parseInt(parent
.getItemAtPosition(position).toString());
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
}
public class MyOnParitySelectedListener implements OnItemSelectedListener {
@Override
public void onItemSelected(AdapterView<?> parent, View view,
int position, long id) {
String parityString = new String(parent.getItemAtPosition(position)
.toString());
if (parityString.compareTo("None") == 0) {
parity = 0;
}
if (parityString.compareTo("Odd") == 0) {
parity = 1;
}
if (parityString.compareTo("Even") == 0) {
parity = 2;
}
if (parityString.compareTo("Mark") == 0) {
parity = 3;
}
if (parityString.compareTo("Space") == 0) {
parity = 4;
}
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
}
public class MyOnFlowSelectedListener implements OnItemSelectedListener {
@Override
public void onItemSelected(AdapterView<?> parent, View view,
int position, long id) {
String flowString = new String(parent.getItemAtPosition(position)
.toString());
if (flowString.compareTo("None") == 0) {
flowControl = 0;
}
if (flowString.compareTo("CTS/RTS") == 0) {
flowControl = 1;
}
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
}
private class readThread extends Thread {
public void run() {
byte[] buffer = new byte[4096];
while (true) {
Message msg = Message.obtain();
if (!isOpen) {
break;
}
int length = MyApp.driver.ReadData(buffer, 4096);
if (length > 0) {
totalrecv = length;
String recv = String.valueOf(totalrecv);
msg.obj = recv;
handler.sendMessage(msg);
}
}
}
}
资源文件列表
CH34xUARTDemo/.gradle/4.4.1/fileChanges/last-build.bin , 1
CH34xUARTDemo/.gradle/4.4.1/fileContent/fileContent.lock , 17
CH34xUARTDemo/.gradle/4.4.1/fileHashes/fileHashes.bin , 31297
CH34xUARTDemo/.gradle/4.4.1/fileHashes/fileHashes.lock , 17
CH34xUARTDemo/.gradle/4.4.1/fileHashes/resourceHashesCache.bin , 19211
CH34xUARTDemo/.gradle/4.4.1/javaCompile/classAnalysis.bin , 798586
CH34xUARTDemo/.gradle/4.4.1/javaCompile/jarAnalysis.bin , 349056
CH34xUARTDemo/.gradle/4.4.1/javaCompile/javaCompile.lock , 17
CH34xUARTDemo/.gradle/4.4.1/javaCompile/taskHistory.bin , 42921
CH34xUARTDemo/.gradle/4.4.1/javaCompile/taskJars.bin , 20134
CH34xUARTDemo/.gradle/4.4.1/taskHistory/taskHistory.bin , 203276
CH34xUARTDemo/.gradle/4.4.1/taskHistory/taskHistory.lock , 17
CH34xUARTDemo/.gradle/buildOutputCleanup/buildOutputCleanup.lock , 17
CH34xUARTDemo/.gradle/buildOutputCleanup/cache.properties , 53
CH34xUARTDemo/.gradle/buildOutputCleanup/outputFiles.bin , 20423
CH34xUARTDemo/.idea/caches/build_file_checksums.ser , 555
CH34xUARTDemo/.idea/codeStyles/Project.xml , 1803
CH34xUARTDemo/.idea/encodings.xml , 869
CH34xUARTDemo/.idea/gradle.xml , 636
CH34xUARTDemo/.idea/libraries/Gradle__com_android_support_support_annotations_25_1_1_jar.xml , 617
CH34xUARTDemo/.idea/libraries/Gradle__com_android_support_support_compat_25_1_1.xml , 700
CH34xUARTDemo/.idea/libraries/Gradle__com_android_support_support_core_ui_25_1_1.xml , 705
CH34xUARTDemo/.idea/libraries/Gradle__com_android_support_support_core_utils_25_1_1.xml , 720
CH34xUARTDemo/.idea/libraries/Gradle__com_android_support_support_fragment_25_1_1.xml , 710
CH34xUARTDemo/.idea/libraries/Gradle__com_android_support_support_media_compat_25_1_1.xml , 730
CH34xUARTDemo/.idea/libraries/Gradle__com_android_support_support_v4_25_1_1.xml , 480
CH34xUARTDemo/.idea/libraries/Gradle____local_aars___C__Users_Administrator_AndroidStudioProjects_CH341SER_ANDROID_Demo_CH34xUARTDemo_CH34xUARTDemo_libs_CH34xUARTDriver_jar_unspecified_jar.xml , 386
CH34xUARTDemo/.idea/misc.xml , 1711
CH34xUARTDemo/.idea/modules.xml , 431
CH34xUARTDemo/.idea/runConfigurations.xml , 564
CH34xUARTDemo/.idea/workspace.xml , 233891
CH34xUARTDemo/build.gradle , 352
CH34xUARTDemo/CH34xUARTDemo/build/generated/source/buildConfig/debug/cn/wch/ch34xuartdemo/BuildConfig.java , 448
CH34xUARTDemo/CH34xUARTDemo/build/generated/source/r/debug/android/support/compat/R.java , 252
CH34xUARTDemo/CH34xUARTDemo/build/generated/source/r/debug/android/support/coreui/R.java , 252
CH34xUARTDemo/CH34xUARTDemo/build/generated/source/r/debug/android/support/coreutils/R.java , 255
CH34xUARTDemo/CH34xUARTDemo/build/generated/source/r/debug/android/support/fragment/R.java , 254
CH34xUARTDemo/CH34xUARTDemo/build/generated/source/r/debug/android/support/mediacompat/R.java , 257
CH34xUARTDemo/CH34xUARTDemo/build/generated/source/r/debug/android/support/v4/R.java , 248
CH34xUARTDemo/CH34xUARTDemo/build/generated/source/r/debug/cn/wch/ch34xuartdemo/R.java , 3151
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/blame/res/debug/multi-v2/debug.json , 6839
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/blame/res/debug/multi-v2/values-sw720dp-land-v13.json , 1099
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/blame/res/debug/multi-v2/values-v11.json , 1146
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/blame/res/debug/multi-v2/values-v14.json , 1146
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/blame/res/debug/multi-v2/values.json , 3598
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/blame/res/debug/single/debug.json , 4158
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/classes/debug/android/support/compat/R.class , 274
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/classes/debug/android/support/coreui/R.class , 274
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/classes/debug/android/support/coreutils/R.class , 280
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/classes/debug/android/support/fragment/R.class , 278
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/classes/debug/android/support/mediacompat/R.class , 284
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/classes/debug/android/support/v4/R.class , 266
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/classes/debug/cn/wch/ch34xuartdemo/BuildConfig.class , 717
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/classes/debug/cn/wch/ch34xuartdemo/R$array.class , 534
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/classes/debug/cn/wch/ch34xuartdemo/R$dimen.class , 467
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/classes/debug/cn/wch/ch34xuartdemo/R$drawable.class , 479
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/classes/debug/cn/wch/ch34xuartdemo/R$id.class , 963
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/classes/debug/cn/wch/ch34xuartdemo/R$layout.class , 515
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/classes/debug/cn/wch/ch34xuartdemo/R$string.class , 886
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/classes/debug/cn/wch/ch34xuartdemo/R$style.class , 437
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/classes/debug/cn/wch/ch34xuartdemo/R$xml.class , 400
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/classes/debug/cn/wch/ch34xuartdemo/R.class , 693
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/classes/debug/cn/wch/ch34xuartdriver/MainActivity$1.class , 930
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/classes/debug/cn/wch/ch34xuartdriver/MainActivity$2.class , 990
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/classes/debug/cn/wch/ch34xuartdriver/MainActivity$FileSelectedListener.class , 1617
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/classes/debug/cn/wch/ch34xuartdriver/MainActivity$MyBtnClicker$1.class , 1051
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/classes/debug/cn/wch/ch34xuartdriver/MainActivity$MyBtnClicker$2.class , 997
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/classes/debug/cn/wch/ch34xuartdriver/MainActivity$MyBtnClicker.class , 5521
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/classes/debug/cn/wch/ch34xuartdriver/MainActivity$MyOnBaudSelectedListener.class , 1521
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/classes/debug/cn/wch/ch34xuartdriver/MainActivity$MyOnDataSelectedListener.class , 1525
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/classes/debug/cn/wch/ch34xuartdriver/MainActivity$MyOnFlowSelectedListener.class , 1710
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/classes/debug/cn/wch/ch34xuartdriver/MainActivity$MyOnParitySelectedListener.class , 1821
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/classes/debug/cn/wch/ch34xuartdriver/MainActivity$MyOnStopSelectedListener.class , 1525
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/classes/debug/cn/wch/ch34xuartdriver/MainActivity$readThread.class , 1756
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/classes/debug/cn/wch/ch34xuartdriver/MainActivity.class , 16115
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/classes/debug/cn/wch/ch34xuartdriver/MyApp.class , 353
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/classes/debug/cn/wch/ch34xuartdriver/utils/FileUtil$1.class , 1662
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/classes/debug/cn/wch/ch34xuartdriver/utils/FileUtil.class , 4090
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/classes/debug/cn/wch/ch34xuartdriver/utils/PermissionUtils.class , 1159
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/incremental/compileDebugAidl/dependency.store , 5
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/incremental/debug-mergeJavaRes/merge-state , 1737
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/incremental/debug-mergeJavaRes/zip-cache/0ThYMohLpJ2e5oEP9JpEigwOlik= , 167030
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/incremental/debug-mergeJavaRes/zip-cache/6H3AmcjYz_iPT0VppR3DwRYizMM= , 104530
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/incremental/debug-mergeJavaRes/zip-cache/cvJ7kt9aZfGn5bhnrrUiAlw5YcE= , 22926
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/incremental/debug-mergeJavaRes/zip-cache/GEBC+UzJbMkNhtseCgjSY5IXCmI= , 301405
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/incremental/debug-mergeJavaRes/zip-cache/P34Pa6RExvmnKh04bua236DF9Z0= , 768887
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/incremental/debug-mergeJavaRes/zip-cache/ry6Ce+G_0W8h6qSAZxj_bv9rohg= , 589
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/incremental/debug-mergeJavaRes/zip-cache/XRXZnU1E+DVbl46C+2COPihquQ8= , 263858
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/incremental/debug-mergeJavaRes/zip-cache/_QCuCMAKDJd0FjP+SYyru3LMiEg= , 7534
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/incremental/debug-mergeJniLibs/merge-state , 1737
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/incremental/debug-mergeJniLibs/zip-cache/0ThYMohLpJ2e5oEP9JpEigwOlik= , 167030
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/incremental/debug-mergeJniLibs/zip-cache/6H3AmcjYz_iPT0VppR3DwRYizMM= , 104530
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/incremental/debug-mergeJniLibs/zip-cache/cvJ7kt9aZfGn5bhnrrUiAlw5YcE= , 22926
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/incremental/debug-mergeJniLibs/zip-cache/GEBC+UzJbMkNhtseCgjSY5IXCmI= , 301405
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/incremental/debug-mergeJniLibs/zip-cache/P34Pa6RExvmnKh04bua236DF9Z0= , 768887
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/incremental/debug-mergeJniLibs/zip-cache/ry6Ce+G_0W8h6qSAZxj_bv9rohg= , 589
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/incremental/debug-mergeJniLibs/zip-cache/XRXZnU1E+DVbl46C+2COPihquQ8= , 263858
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/incremental/debug-mergeJniLibs/zip-cache/_QCuCMAKDJd0FjP+SYyru3LMiEg= , 7534
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/incremental/mergeDebugAssets/merger.xml , 538
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/incremental/mergeDebugJniLibFolders/merger.xml , 392
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/incremental/mergeDebugResources/compile-file-map.properties , 3626
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/incremental/mergeDebugResources/merger.xml , 6844
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/incremental/mergeDebugShaders/merger.xml , 392
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/incremental/packageDebug/tmp/debug/dex-renamer-state.txt , 240
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/incremental/packageDebug/tmp/debug/zip-cache/Ecmb3bqEy3FrUqTjT+nFzd_PqPM= , 63552
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/javaPrecompile/debug/annotationProcessors.json , 2
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/manifests/density/debug/output.json , 2
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/manifests/full/debug/AndroidManifest.xml , 1956
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/manifests/full/debug/output.json , 322
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/manifests/instant-run/debug/output.json , 334
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/res/debug/output.json , 319
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/res/debug/resources-debug.ap_ , 63552
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/res/merged/debug/drawable-hdpi_button_pattern.xml.flat , 2548
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/res/merged/debug/drawable-hdpi_icon.png.flat , 4249
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/res/merged/debug/drawable-hdpi_ic_launcher.png.flat , 7902
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/res/merged/debug/drawable-mdpi_ic_launcher.png.flat , 4021
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/res/merged/debug/drawable-xhdpi_ic_launcher.png.flat , 12762
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/res/merged/debug/drawable-xxhdpi_ic_launcher.png.flat , 25021
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/res/merged/debug/layout_item_dropdown.xml.flat , 770
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/res/merged/debug/layout_item_select.xml.flat , 766
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/res/merged/debug/layout_main.xml.flat , 7506
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/res/merged/debug/layout_my_spinner_textview.xml.flat , 706
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/res/merged/debug/values-sw720dp-land-v13_values-sw720dp-land-v13.arsc.flat , 403
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/res/merged/debug/values-v11_values-v11.arsc.flat , 398
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/res/merged/debug/values-v14_values-v14.arsc.flat , 413
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/res/merged/debug/values_values.arsc.flat , 3583
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/res/merged/debug/xml_device_filter.xml.flat , 750
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/res/symbol-table-with-package/debug/package-aware-r.txt , 1621
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/splits-support/debug/apk-list/apk-list.gson , 158
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/splits-support/debug/split-list/split-list.gson , 149
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/symbols/debug/R.txt , 1600
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/transforms/dexBuilder/debug/1.jar , 2980
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/transforms/dexBuilder/debug/10.jar , 928
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/transforms/dexBuilder/debug/11.jar , 113676
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/transforms/dexBuilder/debug/12.jar , 47224
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/transforms/dexBuilder/debug/13.jar , 55896
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/transforms/dexBuilder/debug/14.jar , 95132
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/transforms/dexBuilder/debug/15.jar , 91564
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/transforms/dexBuilder/debug/16.jar , 104660
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/transforms/dexBuilder/debug/17.jar , 37552
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/transforms/dexBuilder/debug/18.jar , 51840
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/transforms/dexBuilder/debug/19.jar , 32932
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/transforms/dexBuilder/debug/2.jar , 10176
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/transforms/dexBuilder/debug/20.jar , 49748
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/transforms/dexBuilder/debug/21.jar , 105068
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/transforms/dexBuilder/debug/22.jar , 136152
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/transforms/dexBuilder/debug/23.jar , 279384
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/transforms/dexBuilder/debug/24.jar , 245840
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/transforms/dexBuilder/debug/25.jar , 240280
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/transforms/dexBuilder/debug/26.jar , 4456
CH34xUARTDemo/CH34xUARTDemo/build/intermediates/transforms/dexBuilder/debug/27.jar , 4068
最多只能显示150条信息!
