广告
返回顶部
首页 > 资讯 > 精选 >Android怎么调用手机摄像头拍照和录音功能
  • 807
分享到

Android怎么调用手机摄像头拍照和录音功能

2023-06-29 17:06:12 807人浏览 独家记忆
摘要

本文小编为大家详细介绍“Android怎么调用手机摄像头拍照和录音功能”,内容详细,步骤清晰,细节处理妥当,希望这篇“Android怎么调用手机摄像头拍照和录音功能”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。调

本文小编为大家详细介绍“Android怎么调用手机摄像头拍照和录音功能”,内容详细,步骤清晰,细节处理妥当,希望这篇“Android怎么调用手机摄像头拍照和录音功能”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

调用摄像头拍照:

public class MainActivity extends Activity {     private Button button;    private ImageView imageView;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        imageView= (ImageView) findViewById(R.id.imageView);        button= (Button) findViewById(R.id.btn);        button.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View view) {                Intent intent=new Intent(MediaStore.ACTioN_IMAGE_CAPTURE);                startActivityForResult(intent,1);            }        });    }     @Override    protected void onActivityResult(int requestCode, int resultCode, Intent data) {        super.onActivityResult(requestCode, resultCode, data);        if(resultCode==RESULT_OK){            Bundle bundle=data.getExtras();            Bitmap bitmap= (Bitmap) bundle.get("data");            if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){                File file=new File(Environment.getExternalStorageDirectory(),"MyImage");                if(!file.exists()){                    file.mkdir();                }                try {                    String date=new SimpleDateFORMat("yyyyMMddhhmmss").format(new Date());                    String path=file+"/"+date+".jpg";                    FileOutputStream outputStream=new FileOutputStream(path);                    bitmap.compress(Bitmap.CompressFormat.JPEG,100,outputStream);                } catch (FileNotFoundException e) {                    e.printStackTrace();                }            }            imageView.setImageBitmap(bitmap);        }    }}

布局文件

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="Http://schemas.android.com/apk/res/android"    android:orientation="vertical"    android:gravity="center"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent">     <Button        android:id="@+id/btn"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="Hello World!" />    <ImageView        android:id="@+id/imageView"        android:layout_width="200dp"        android:layout_height="200dp" /></LinearLayout>

调用录音功能:

public class Main2Activity extends Activity implements View.OnClickListener,AdapterView.OnItemClickListener{     private ListView listView;//录音文件控件    private Button btn1,btn2;//开始按钮和停止按钮    private MediaRecorder recorder;//录音对象    private List<String> list=new ArrayList<>();//录音文件数据源    private File path,recorderFile;//根目录,要存入sd卡的录音文件    private ArrayAdapter adapter;//适配器    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main2);        init();        if(null!=path){            musicList();        }    }     //初始化时获得所有录音文件    private void musicList() {        File home=path;        //判断文件过滤器的长度是否大于0,大于则适配到listview上,小于则不设置上去        if(home.listFiles(new MusicFilter()).length>0){            for(File file:home.listFiles(new MusicFilter())){                list.add(file.getName());            }            adapter=new ArrayAdapter(this,android.R.layout.simple_list_item_1,list);            listView.setAdapter(adapter);        }    }     private void init() {        listView= (ListView) findViewById(R.id.listView);        listView.setOnItemClickListener(this);        btn1= (Button) findViewById(R.id.start);        btn2= (Button) findViewById(R.id.stop);        btn1.setOnClickListener(this);        btn2.setOnClickListener(this);        path=getPath();//获得根目录    }     private File getPath() {        File file=null;        //判断sd卡状态        if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){            file=Environment.getExternalStorageDirectory();        }else{            Toast.makeText(this,"没有SD卡",Toast.LENGTH_SHORT).show();        }        return file;    }     @Override    public void onClick(View view) {        switch (view.getId()){            //开始按钮            case R.id.start:                startRecorder();                btn1.setEnabled(false);                btn2.setEnabled(true);                break;            //停止按钮            case R.id.stop:                stopRecorder();                btn1.setEnabled(true);                btn2.setEnabled(false);                break;        }    }     private void stopRecorder() {        //如果录音的文件不为null        if(recorderFile!=null){            //停止录音            recorder.stop();            //把录音文件的名字加入集合里            list.add(recorderFile.getName());            if(adapter!=null){                //刷新适配器                adapter.notifyDataSetChanged();            }            //释放录音对象            recorder.release();            recorder=null;        }     }     private void startRecorder() {        //创建录音对象        recorder=new MediaRecorder();        //设置麦克风        recorder.setAudiOSource(MediaRecorder.AudioSource.MIC);        //设置转码类型        recorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);        //设置编码方式        recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);        try {            //创建录音文件            recorderFile=File.createTempFile("录音_",".amr",path);            //设置录音的数据写到录音文件里            recorder.setOutputFile(recorderFile.getAbsolutePath());            //录音准备            recorder.prepare();            //录音开始            recorder.start();        } catch (IOException e) {            e.printStackTrace();        }    }     @Override    public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {        //获得点击条目的路径            File file=new File(path.getAbsolutePath()+File.separator+list.get(i));            playMusic(file);    }     //调用播放器播放点击的条目文件    private void playMusic(File file) {        Intent intent = new Intent(Intent.ACTION_VIEW);        Uri uri = Uri.fromFile(file);        intent.setDataAndType(uri, "audio/mp3");        startActivity(intent);    }}

文件过滤代码:

public class MusicFilter implements FilenameFilter {    @Override    public boolean accept(File file, String name) {        return (name.endsWith(".amr"));    }}

布局文件:

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:orientation="vertical"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent">     <Button        android:id="@+id/start"        android:text="开始录音"        android:layout_width="match_parent"        android:layout_height="wrap_content" />    <Button        android:id="@+id/stop"        android:text="停止录音"        android:layout_width="match_parent"        android:layout_height="wrap_content" />    <ListView        android:id="@+id/listView"        android:layout_width="match_parent"        android:layout_height="match_parent"></ListView> </LinearLayout>

读到这里,这篇“Android怎么调用手机摄像头拍照和录音功能”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注编程网精选频道。

--结束END--

本文标题: Android怎么调用手机摄像头拍照和录音功能

本文链接: https://www.lsjlt.com/news/325874.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Android调用手机摄像头拍照和录音功能
    本文实例为大家分享了Android调用手机摄像头拍照和录音功能的具体代码,供大家参考,具体内容如下 调用摄像头拍照: public class MainActivity extend...
    99+
    2022-11-13
  • Android怎么调用手机摄像头拍照和录音功能
    本文小编为大家详细介绍“Android怎么调用手机摄像头拍照和录音功能”,内容详细,步骤清晰,细节处理妥当,希望这篇“Android怎么调用手机摄像头拍照和录音功能”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。调...
    99+
    2023-06-29
  • 怎么用HTML5实现调用手机摄像头拍照功能
    本篇内容介绍了“怎么用HTML5实现调用手机摄像头拍照功能”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! ...
    99+
    2022-10-19
  • Android中怎么调用摄像头拍照
    本篇文章给大家分享的是有关Android中怎么调用摄像头拍照,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。第一步,获取权限if (ContextCompat.chec...
    99+
    2023-06-04
  • 怎么用Java+OpenCV调用摄像头实现拍照功能
    这篇文章主要介绍了怎么用Java+OpenCV调用摄像头实现拍照功能的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么用Java+OpenCV调用摄像头实现拍照功能文章都会有所收获,下面我们一起来看看吧。环境准...
    99+
    2023-06-29
  • Android 实现调用系统照相机拍照和录像的功能
    本文实现android系统照相机的调用来拍照 项目的布局相当简单,只有一个Button: <RelativeLayout xmlns:android="http://s...
    99+
    2022-06-06
    调用 系统 相机 Android
  • 怎么在HTML5中实现拍照和摄像机功能
    本篇文章为大家展示了怎么在HTML5中实现拍照和摄像机功能,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。拍照HTML5的getUserMedia API为用户提供访问硬件设备媒体(摄像头、视频、音频...
    99+
    2023-06-09
  • 怎么在SAP UI5应用里添加使用摄像头拍照的功能
    本篇内容介绍了“怎么在SAP UI5应用里添加使用摄像头拍照的功能”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!技术实现的要点:(1) 在w...
    99+
    2023-06-04
  • 云服务器怎么调用摄像头功能呢苹果手机
    如果您的苹果手机具备摄像头功能,那么可以使用以下方法调用摄像头功能: 打开您的苹果手机 App Store或 iTunes 商店,搜索“照相机”或“麦克风”或“录像”等关键词,然后选择您的手机品牌。 进入相机菜单,找到“设置”或“全景”...
    99+
    2023-10-26
    摄像头 苹果 功能
  • 云服务器怎么调用摄像头功能呢苹果手机上
    如果您的苹果手机上已经安装了相机应用程序,您可以通过以下方式调用摄像头功能: 打开相机应用程序,选择“设置”选项。 在设置中找到“通用”选项。 点击“相机应用程序”,选择“从相机使用图像”。 在此窗口中,找到“允许通知”选项并点击该按钮...
    99+
    2023-10-26
    机上 摄像头 苹果
  • 云服务器怎么调用摄像头功能呢苹果13手机
    如果您想使用云服务器来调用摄像头功能,您需要将摄像头连接到您的本地网络。具体步骤如下: 打开浏览器,进入到您的云计算网站或服务提供商的网站,如 Amazon Web Services、AWS Lambda、Google Cloud Pl...
    99+
    2023-10-26
    摄像头 苹果 功能
  • 云服务器怎么调用摄像头监控功能呢苹果手机
    如果您的苹果手机具备访问互联网的能力,您可以使用以下方法调用摄像头监控功能: 打开手机中的“设置”应用程序,然后找到“隐私”选项并打开。 在该选项中,找到“访问限制”选项并单击。 在弹出窗口中,选择“允许访问此类别”并启用“应用访问摄像...
    99+
    2023-10-26
    摄像头 苹果 功能
  • 云服务器怎么调用摄像头功能呢苹果手机怎么设置
    苹果手机中的摄像头功能非常有用,可以通过以下步骤来使用: 打开苹果手机的“设置”应用。 打开“通用”选项。 找到“辅助功能”选项卡。 找到“摄像头”选项卡,点击进入。 勾选“允许我远程访问摄像头”选项,并根据自己的需求选择是否开启。 点...
    99+
    2023-10-26
    摄像头 苹果 功能
  • 云服务器怎么调用摄像头监控功能呢苹果手机上
    如果您的苹果手机上具有云存储功能,您可以通过以下步骤调用摄像头监控功能: 打开“控制中心”应用程序并选择“云存储”。 点击“云存储”下拉列表,找到“摄像头监控”选项。 在“摄像头监控”页面中,找到您的摄像头并点击“启用”。 在弹出的窗口...
    99+
    2023-10-27
    机上 摄像头 苹果
  • 云服务器怎么调用摄像头监控功能呢苹果版手机
    如果您是使用苹果手机并且希望通过苹果云服务(Apple Cloud Computing, AWS或GCP)来访问摄像头监控功能,则您可以按照以下步骤操作: 打开AStore应用程序并搜索“摄像头监控”选项。 在“摄像头监控”页面中,点击...
    99+
    2023-10-27
    摄像头 苹果 功能
  • 云服务器怎么调用摄像头监控功能呢苹果13手机
    如果您的苹果13手机没有集成摄像头监控功能,您可以通过以下步骤进行操作: 打开您的手机或平板电脑的摄像头应用程序或软件,并在顶部栏中找到“设置”按钮。 在设置页面中,您可以通过“通用”选项卡中的“辅助功能”或“摄像头”选项找到“摄像头监...
    99+
    2023-10-27
    摄像头 苹果 功能
  • 云服务器怎么调用摄像头功能呢苹果手机上设置
    如果您的苹果手机上设置了允许使用摄像头功能,您可以通过以下步骤访问摄像头功能的设置: 从“设置”应用程序中进入摄像头应用程序。 在摄像头设置页面中找到“通用”选项卡,并在其中找到“摄像头”组件。 点击“通用”选项卡并选择“允许使用摄像头...
    99+
    2023-10-27
    机上 摄像头 苹果
  • 云服务器怎么调用摄像头监控系统的录像功能
    要调用摄像头监控系统的录像功能,您需要提供摄像头的URL和相关信息,例如摄像头的IP地址、监控主机的IP地址以及视频编码的格式(例如QCIF或FLV)等。以下是一些步骤: 准备一个摄像头URL并在网站上发布该URL。 在网站的“摄像头使...
    99+
    2023-10-26
    监控系统 摄像头 录像
  • 云服务器怎么调用摄像头功能呢苹果手机上怎么设置
    苹果手机上的摄像头功能一般可以通过以下几种方式进行调用: 通过Home键开启摄像头:使用Home键(home键)开启摄像头功能后,手机将进入“设置”应用程序中,并打开“辅助功能”选项。 使用第三方应用程序调用摄像头:在某些应用程序中,如...
    99+
    2023-10-27
    机上 摄像头 苹果
  • 云服务器怎么调用摄像头监控设备功能呢苹果手机
    使用云服务器可以方便地将摄像头监控设备的数据存储在云服务器上,用户可以随时随地通过网络访问这些数据,无需担心存储设备的空间和带宽问题。 使用云服务器还可以让用户通过网络与摄像头监控设备进行远程控制,用户只需要在网络上登录相应的账号并输入相...
    99+
    2023-10-27
    摄像头 监控设备 苹果
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作