开发者社区> cometwo123> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

android平台手电筒开发源代码

简介:
+关注继续查看
01 /**
02  * name   : 手电筒主界面
03  * author : ycgpp@126.com
04  * date    : 2012-12-21 15:50:17
05  */
06 package com.android.app;
07  
08 import android.app.Activity;
09 import android.hardware.Camera;
10 import android.hardware.Camera.Parameters;
11 import android.os.Bundle;
12 import android.view.View;
13 import android.widget.TextView;
14 import android.widget.Toast;
15  
16 public class Main extends Activity {
17  
18     private boolean isopent = false;
19     private Camera camera;
20  
21     @Override
22     protected void onCreate(Bundle savedInstanceState) {
23         // TODO Auto-generated method stub
24         super.onCreate(savedInstanceState);
25         View view = View.inflate(this, R.layout.main, null);
26         setContentView(view);
27         TextView img_but = (TextView) findViewById(R.id.main_img);
28  
29         img_but.setOnClickListener(new View.OnClickListener() {
30  
31             @Override
32             public void onClick(View v) {
33                 // TODO Auto-generated method stub
34                 if (!isopent) {
35                     Toast.makeText(getApplicationContext(), "您已经打开了手电筒"0)
36                             .show();
37                     camera = Camera.open();
38                     Parameters params = camera.getParameters();
39                     params.setFlashMode(Parameters.FLASH_MODE_TORCH);
40                     camera.setParameters(params);
41                     camera.startPreview(); // 开始亮灯
42  
43                     isopent = true;
44                 else {
45                     Toast.makeText(getApplicationContext(), "关闭了手电筒",
46                             Toast.LENGTH_SHORT).show();
47                     camera.stopPreview(); // 关掉亮灯
48                     camera.release(); // 关掉照相机
49                     isopent = false;
50                 }
51             }
52         });
53     }
54  
55 }

[代码] 布局文件代码

01 <?xml version="1.0" encoding="utf-8"?>
02 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
03     android:layout_width="match_parent"
04     android:layout_height="match_parent"
05     android:orientation="vertical" >
06  
07     <TextView
08         android:id="@+id/main_img"
09         android:layout_width="fill_parent"
10         android:layout_height="fill_parent"
11         android:background="@drawable/main_body">
12     </TextView>
13  
14 </LinearLayout>

[代码] AndroidManifest.xml文件

01 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
02     package="com.android.app"
03     android:versionCode="1"
04     android:versionName="1.0" >
05  
06     <uses-sdk
07         android:minSdkVersion="8"
08         android:targetSdkVersion="15" />
09  
10     <application
11         android:icon="@drawable/ic_launcher"
12         android:label="@string/app_name"
13         android:theme="@style/AppTheme" >
14         <activity android:name=".AppStart" >
15             <intent-filter>
16                 <action android:name="android.intent.action.MAIN" />
17  
18                 <category android:name="android.intent.category.LAUNCHER" />
19             </intent-filter>
20         </activity>
21         <activity android:name=".Main" >
22         </activity>
23     </application>
24     <!-- 摄像头、手电筒 -->
25     <uses-permission android:name="android.permission.CAMERA" />
26     <uses-permission android:name="android.permission.FLASHLIGHT" />
27  
28     <uses-feature android:name="android.hardware.camera" />
29     <uses-feature android:name="android.hardware.camera.autofocus" />
30     <uses-feature android:name="android.hardware.camera.flash" />
31  
32 </manifest>

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Android开发之浮动Activity
场景 在使用App时,曾经看到这样一个场景,如下图所示,点击顶部菜单按钮,有一个类似的对话框的列表显示出来,让用户选择其中的一个快递选项,然后选中的快递信息就会填充到底部的Activity中。
674 0
android代码混淆
proguard 原理<br> Java代码编译成二进制class 文件,这个class 文件也可以反编译成源代码 ,除了注释外,原来的code 基本都可以看到。为了防止重要code 被泄露,我们往往需要混淆(Obfuscation code , 也就是把方法,字段,包和类这些java 元素的名称改成无意义的名称,这样代码结构没有变化,还可以运行,但是想弄懂代码的架构却很难。 progu
1665 0
+关注
1029
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载