android 相关

原创 2013年12月05日 15:44:27


实例应用之二维码:

扫描与生成,

 这个包你绝对会使用 什么呢?就是 http://code.google.com/p/zxing/downloads/list 对,zxing.

1,生成呢,详细看这个介绍: http://blog.csdn.net/chenshufei2/article/details/8682934

 核心代码

public Bitmap CreateTwoDCode(String content) throws WriterException {
		// 生成二维矩阵,编码时指定大小,不要生成了图片以后再进行缩放,这样会模糊导致识别失败,BarcodeFormat就是你要生成的类型
		BitMatrix matrix = new MultiFormatWriter().encode(content,
				BarcodeFormat.QR_CODE, 300, 300); 
		int width = matrix.getWidth();
		int height = matrix.getHeight();
		// 二维矩阵转为一维像素数组,也就是一直横着排了
		int[] pixels = new int[width * height];
		for (int y = 0; y < height; y++) {
			for (int x = 0; x < width; x++) {
				if (matrix.get(x, y)) {
					pixels[y * width + x] = 0xff000000;
				}
			}
		}

		Bitmap bitmap = Bitmap.createBitmap(width, height,
				Bitmap.Config.ARGB_8888);
		// 通过像素数组生成bitmap,具体参考api
		bitmap.setPixels(pixels, 0, width, 0, 0, width, height);
		return bitmap;
	}


2 扫描,就看这个:  http://www.open-open.com/lib/view/open1344150168061.html 也是用的http://code.google.com/p/zxing/ 所以,针对二维码就是使用zxing了,具体内容自己研究.

二,语音 TTS的使用

TextToSpeech speak = null;// 定义tts

speak = new TextToSpeech(this, new TextToSpeech.OnInitListener() {
   @Override
   public void onInit(int status) {
      speak.speak("你要说的话....", TextToSpeech.QUEUE_ADD, null);     
   }
  });

三、网络通信方面

比较经典的就是AsyncHttpClient网上有源码下载(android-async-http),这个东东,就是一个网络通类,最主要的是采用了android 线程池吧,呵呵,一般初学使用的是AsyncTask确实比较经典。但是也可以自己去写这个网络通信类,AsyncHttpClient,中网络连接线程是Runnable,访问网络完成之后,再通过Handler回调UI线程中的回调函数(接口函数)。但是AsyncTask就只不需要Handler了,我想这更简单一些吧,呵呵。

四、调用相机并保存图片

Intent intent = new Intent(
            MediaStore.ACTION_IMAGE_CAPTURE);// 调用android自带的照相机
startActivityForResult(
            intent,
            RESULT_LOAD_CAME);
void onActivityResult(int requestCode, int resultCode,Intent data){
        String name = DateFormat.format("yyyy_MMdd_hhmmss",Calendar.getInstance(Locale.CHINA)) + ".jpg";
        String dcimCameraPath=Environment.getExternalStorageDirectory().getPath() + "/DCIM/Camera/";
                                    if (dcimCameraPath == null) {
					Toast.makeText(getActivity(), "没有存储空间",
							Toast.LENGTH_LONG).show();
					return;
				}
				FileOutputStream b = null;

				File file = new File(dcimCameraPath);
				file.mkdirs();// 创建文件夹
				String imagePath = dcimCameraPath + name;
				try {
					b = new FileOutputStream(imagePath);
					bitmap.compress(Bitmap.CompressFormat.JPEG, 100,
							b);// 把数据写入文件
				} catch (FileNotFoundException e) {
					e.printStackTrace();
				} finally {
					try {
						b.flush();
						b.close();
					} catch (IOException e) {
						e.printStackTrace();
					}
				}
}



 

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

android网络相关代码

  • 2013-11-01 16:22
  • 9.19MB
  • 下载

android apk的反编译的相关操作

反编译

android中wifi相关流程介绍

  • 2012-12-16 21:18
  • 349KB
  • 下载

android相关

  • 2013-04-18 00:42
  • 163KB
  • 下载

Android NFC相关资料之MifareClassic卡(读写)

一般来说,给予MifareClassic的射频卡,一般内存大小有3种:1K: 16个分区(sector),每个分区4个块(block),每个块(block) 16个byte数据2K: 32个分区,每个...

android – 多屏幕适配相关

1、基本概念 屏幕大小(screen size) – 屏幕的实际大小,用屏幕对角线长度来衡量(比如3.4寸,3.8寸)。android把屏幕分为以下4种:small,normal,large,ext...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)