【Android】MtkSettings中添加显示Imei为条形码功能 |
您所在的位置:网站首页 › 写入imei码 › 【Android】MtkSettings中添加显示Imei为条形码功能 |
定位位置
MtkSettings\src\com\android\settings\deviceinfo\imei 用ARDC工具,打开性能监控,进入到所需要修改的页面,即可定位到文件位置,除了极少数无法定位,比如settings中由Adapter填充数据的页面 需求进入Android设置点击Android系统中点击IMEI号,弹出对话框,在原有的对话框空白处加上由IMEI号生成的条形码 效果改之前: 修改之后: zxing的jar包下载 zing的github地址 编写工具类BitmapUtil.java package com.android.settings.deviceinfo.imei; import android.graphics.Bitmap; import com.google.zxing.BarcodeFormat; import com.google.zxing.MultiFormatWriter; import com.google.zxing.WriterException; import com.google.zxing.common.BitMatrix; public class BitmapUtil { private static final int BLACK = 0xff000000; private static final int WHITE = 0xFFFFFFFF; private static BarcodeFormat barcodeFormat = BarcodeFormat.CODE_128; public static Bitmap creatBarcode(String contents, int desiredWidth,int desiredHeight) { MultiFormatWriter writer = new MultiFormatWriter(); BitMatrix result=null; try { result = writer.encode(contents, barcodeFormat, desiredWidth, desiredHeight); } catch (WriterException e) { // TODO Auto-generated catch block e.printStackTrace(); } int width = result.getWidth(); int height = result.getHeight(); int[] pixels = new int[width * height]; // All are 0, or black, by default for (int y = 0; y pixels[offset + x] = result.get(x, y) ? BLACK : WHITE; } } Bitmap bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888); bitmap.setPixels(pixels, 0, width, 0, 0, width, height); return bitmap; } }找到对应的xml 同时在填充数据的java文件中加上setImage方法(即自定义对话框数据填充文件) public void setImage(int viewId,Bitmap bitmap){ final ImageView imageView = mRootView.findViewById(viewId); if(imageView != null){ imageView.setImageBitmap(bitmap); } }找到弹出对话框的位置 CharSequence sequence = getTextAsDigits(mTelephonyManager.getImei(mSlotId)); String mImeiValue = sequence.toString(); if(mImeiValue.isEmpty()){ Log.i(TAG,"mImeiValue is empty"); }else{ Bitmap bitmap = BitmapUtil.createBarcode(mImeiValue,550,65); //IMEI_VALUE_IMAGE = R.id.barcode_imei mDialog.setImage(IMEI_VALUE_IMAGE,bitmap); //IMEI_VALUE_IMAGE = R.id.barcode_imei mDialog.setImage(IMEI_VALUE_IMAGE,bitmap); } } |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |