plugins { id 'com.android.application' } android { compileSdk 28 buildToolsVersion '30.0.3' defaultConfig { applicationId "chaoran.business.pda" minSdk 28 targetSdk 28 versionCode 1 versionName "2.18" // 1.0 IDATA广播模式处理 // 1.1 霍尼韦尔的监听修改(扫描网站二维码跳出程序,监听失效,调整)、斑马PDA广播模式设置 // 1.2 霍尼韦尔EDA56、jdk11,gradle7.3、海信PDA广播支持 // 1.3 东集 pda的支持 // 1.4 联新 pda的支持 已经 adapter 关闭的判断 // 1.5 urovo DT50 Lite pda的支持 // 1.6 瑞星平板扫描,线程读取一半就返回处理 // 1.7 暴露一个方法,跳转到index初始化页面 // 1.8 霍尼韦尔EDA50p,在返回桌面,点击了新的扫描之后,出现再进入程序(新打开一样)无法扫描,从而导致问题,添加了一个stop2的方法,针对霍尼韦尔eda50p,不进行销毁,在真正销毁的方法关闭服务,还是存在程序返回桌面无法扫描问题,但是退出程序之后,新打开程序可以扫描 // 1.9 海康威视 mv-idp5102 适配广播模式 // 1.10 bug 代码判断没有结束 // 1.11 霍尼韦尔EDA52 // 1.12 屏幕旋转,采取配置化模式(只能竖屏、横屏);取消旋转屏幕就重置activity生命周期 // 1.13 新大陆pda 兼容广播模式;NLS-NFT10 // 1.14 瑞芯 rk3566_r 添加引用 librockchip.so; 新加一个方法,返回当前PDA的厂家和型号 // 1.15 系统状态栏根据配置进行设置 // 1.16 idata pda 不设置模式 // 1.17 霍尼韦尔EDA51、EDA50P,调用扫描枪的方法,在关闭的时候停止调用扫描枪 // 1.18 瑞兴平板,读取扫描结果,使用同步加锁模式 // 1.19 index页面接入初始化数据 // 2.1 注册PDA的信息存储到文件内部,采取mac+固定加密串的MD5加密校验 // 2.2 安卓14以上,无法获取mac地址,修改成获取唯一id作为mac地址 // 2.3 适配IOT_Device:sc55g PDA 广播模式 // 2.4 适配 qualcomm:mc50 PDA 广播模式 // 2.5 mac地址存储文件(mac获取失败就随机一个);监听返回按键,提示是否退出程序的提示窗口 // 2.6 1、打开程序的时候清空缓存(为了程序更新的时候,不被缓存影响,不用手动清除、出现了用户手动清除的时候吧存储空间清除了); // 2、判断是否初始化成功(webview成功),如果已经加载完毕,那么apk不在拦截,调用js的方法让BS进行处理提示 // 3、根据官方文档,将code的判断进行修改,添加了一个网络错误的页面进行提示(并且添加了一个重新加载的按钮,执行webview重新加载) // 2.7 海康威视 mv-idp5204 适配广播模式;和之前的idp5102厂家code不一样 宿州市立医院-李德 // 2.8 编写一个通用的广播模式,action:chaoran.crtech.cn.pda.scan key:barcode // 2.9 初始化屏幕方向 // 2.10 再次添加了init.json文件,进行初始化ip等参数 // 2.11 优化了保存配置的时候,重新加载页面方法,去设置初始化屏幕方向,已经init.json中添加了字段备注信息 // 2.12 群创科技接入广播模式 中山市古镇人民医院 蒋凡 // 2.13 取消监听旋转角度,使用系统自带的旋转(根据配置初始化,旋转方向:横、竖、随意) // 瑞芯适配器 接入 新的型号,使用的是 ttyS8;而不是ttyS1;并且只有一个接口。 // 2.14 适配 AIFUU 陈安良:陆军特色中心医院 // 2.15 添加文件选择和相机拍照功能 // 2.16 暴露了一个直接调用相机的方法,非http input调用会出现默认的弹出窗口进行选择(相机、文件) // 2.17 支持原生相机,默认压缩;支持霍尼韦尔eda52服务扫描 // 2.18 瑞兴平板,rk3568_r,存在两个ttyS8、ttyS1,2G内存之前是ttyS8才可以接收,4G内存的ttyS8直接报错,导致打不开,需要缓存ttyS1,改成兼容模式 // 支持霍尼韦尔eda52服务扫描修改成广播模式,医院那边不要所谓的服务连续扫描 testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" ndk { abiFilters 'armeabi-v7a' } } //签名配置 signingConfigs { release { storeFile file(RELEASE_STOREFILE); storePassword RELEASE_STORE_PASSWORD; keyAlias RELEASE_KEY_ALIAS keyPassword RELEASE_KEY_PASSWORD } } //构建类型 buildTypes { release { minifyEnabled false //是否代码混淆 multiDexEnabled true //防止方法数量超过65536导致错误 proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' //配置签名 signingConfig signingConfigs.release } } //关闭代码格式检查 lintOptions { abortOnError false } //加载动态库 sourceSets { main { jniLibs.srcDir(['libs']) } } //编译选项 compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } /* repositories { flatDir { dirs 'libs' } }*/ } dependencies { compileOnly 'com.symbol:emdk:9.1.1' implementation 'androidx.appcompat:appcompat:1.2.0' implementation 'com.google.android.material:material:1.2.1' implementation 'com.google.code.gson:gson:2.6.2' //加载jar包 implementation fileTree(dir: 'libs', include: ['*.jar']) implementation 'androidx.preference:preference:1.1.1' //implementation fileTree(include: ['*.aar'], dir: 'libs') // 全屏,没有状态栏 api 'com.readystatesoftware.systembartint:systembartint:1.0.3' implementation files('libs/armeabi-v7a/librockchip.so') }