当前位置: 首页 > news >正文

党建设计网站大全百度站长平台链接

党建设计网站大全,百度站长平台链接,网站开发技术文章,中国世界排名变化流程 一、获取CameraManager实例二、获取可用的相机列表三、选择一个相机并打开它四、创建一个CaptureRequest.Builder对象五、设置CaptureRequest.Builder对象的参数六、创建一个CaptureSession对象七、开始预览 代码示例 一、获取CameraManager实例 CameraManager manager (…

流程

        • 一、获取CameraManager实例
        • 二、获取可用的相机列表
        • 三、选择一个相机并打开它
        • 四、创建一个CaptureRequest.Builder对象
        • 五、设置CaptureRequest.Builder对象的参数
        • 六、创建一个CaptureSession对象
        • 七、开始预览
      • 代码示例

一、获取CameraManager实例

   CameraManager manager = (CameraManager) getSystemService(Context.CAMERA_SERVICE);

二、获取可用的相机列表

   String[] cameraIds = manager.getCameraIdList();

三、选择一个相机并打开它

   String cameraId = cameraIds[0];manager.openCamera(cameraId, new CameraDevice.StateCallback() {@Overridepublic void onOpened(CameraDevice camera) {// 相机已经打开,可以进行后续操作}@Overridepublic void onDisconnected(CameraDevice camera) {// 相机断开连接,需要释放资源camera.close();}@Overridepublic void onError(CameraDevice camera, int error) {// 相机打开出错,需要释放资源camera.close();}}, null);

四、创建一个CaptureRequest.Builder对象

   CaptureRequest.Builder builder = camera.createCaptureRequest(CameraDevice.TEMPLATE_PREVIEW);

五、设置CaptureRequest.Builder对象的参数

   builder.set(CaptureRequest.CONTROL_MODE, CameraMetadata.CONTROL_MODE_AUTO);

六、创建一个CaptureSession对象

   camera.createCaptureSession(Arrays.asList(surface), new CameraCaptureSession.StateCallback() {@Overridepublic void onConfigured(CameraCaptureSession session) {// CaptureSession已经创建,可以进行后续操作}@Overridepublic void onConfigureFailed(CameraCaptureSession session) {// CaptureSession创建失败,需要释放资源camera.close();}}, null);

七、开始预览

   session.setRepeatingRequest(builder.build(), null, null);

代码示例

  • xml布局
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"tools:context=".MainActivity"><TextureViewandroid:id="@+id/texture_view"android:layout_width="match_parent"android:layout_height="match_parent" /></RelativeLayout>
  • 处理
public class MainActivity extends AppCompatActivity implements  TextureView.SurfaceTextureListener{private String[] cameraIds;private  String cameraId;private CameraManager cameraManager;//从系统服务中获取相机管理器private TextureView textureView;private CameraDevice mCameraDevice;private CameraCaptureSession cameraCaptureSession;private CaptureRequest.Builder captureRequestBuilder = null;private static final int ACTION_REQUEST_PERMISSIONS = 0x001;/*** 所需的所有权限信息*/private static final String[] NEEDED_PERMISSIONS = new String[]{Manifest.permission.CAMERA,//相机};@SuppressLint({"MissingPermission", "MissingInflatedId"})@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);//权限检查if (!checkPermissions(NEEDED_PERMISSIONS)) {ActivityCompat.requestPermissions(this, NEEDED_PERMISSIONS,ACTION_REQUEST_PERMISSIONS);}textureView=findViewById(R.id.texture_view);textureView.setSurfaceTextureListener(this);//设置布局}/*** 权限检查* @param neededPermissions 需要的权限* @return 是否全部被允许*/protected boolean checkPermissions(String[] neededPermissions) {if (neededPermissions == null || neededPermissions.length == 0) {return true;}boolean allGranted = true;for (String neededPermission : neededPermissions) {allGranted &= ContextCompat.checkSelfPermission(this, neededPermission) == PackageManager.PERMISSION_GRANTED;}return allGranted;}@Overridepublic void onSurfaceTextureAvailable(@NonNull SurfaceTexture surfaceTexture, int i, int i1) {//布局初始化完成,打开相机openCamera2();}@SuppressLint("MissingPermission")private void openCamera2(){//一、获取cameraManagercameraManager = (CameraManager) getSystemService(Context.CAMERA_SERVICE);try {cameraIds = cameraManager.getCameraIdList();//获取摄像机id的集合cameraId = cameraIds[0];cameraManager.openCamera(cameraId,callback,null);} catch (Exception e) {throw new RuntimeException(e);}}CameraDevice.StateCallback callback=new CameraDevice.StateCallback() {@Overridepublic void onOpened(@NonNull CameraDevice cameraDevice) {mCameraDevice = cameraDevice;createCameraPreviewSession();}@Overridepublic void onDisconnected(@NonNull CameraDevice cameraDevice) {}@Overridepublic void onError(@NonNull CameraDevice cameraDevice, int i) {}};private void createCameraPreviewSession() {try {SurfaceTexture surfaceTexture = textureView.getSurfaceTexture();
//            surfaceTexture.setDefaultBufferSize(textureView.getWidth(), textureView.getHeight());surfaceTexture.setDefaultBufferSize(640, 480);
//            surfaceTexture.setDefaultBufferSize(480,640 );Surface previewSurface = new Surface(surfaceTexture);captureRequestBuilder = mCameraDevice.createCaptureRequest(CameraDevice.TEMPLATE_PREVIEW);captureRequestBuilder.addTarget(previewSurface);mCameraDevice.createCaptureSession(Arrays.asList(previewSurface), new CameraCaptureSession.StateCallback() {@Overridepublic void onConfigured(CameraCaptureSession session) {cameraCaptureSession = session;try {cameraCaptureSession.setRepeatingRequest(captureRequestBuilder.build(), null, null);} catch (CameraAccessException e) {e.printStackTrace();}}@Overridepublic void onConfigureFailed(CameraCaptureSession session) {Toast.makeText(MainActivity.this, "Failed to create camera capture session", Toast.LENGTH_SHORT).show();}}, null);} catch (CameraAccessException e) {e.printStackTrace();}}@Overridepublic void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {super.onRequestPermissionsResult(requestCode, permissions, grantResults);switch (requestCode) {case ACTION_REQUEST_PERMISSIONS: {// 如果请求被取消,结果数组将为空if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {// 授权成功,执行相关操作} else {// 授权失败,禁用相关功能或显示提示信息}return;}// 处理其他权限请求}}@Overridepublic void onSurfaceTextureSizeChanged(@NonNull SurfaceTexture surfaceTexture, int i, int i1) {}@Overridepublic boolean onSurfaceTextureDestroyed(@NonNull SurfaceTexture surfaceTexture) {return false;}@Overridepublic void onSurfaceTextureUpdated(@NonNull SurfaceTexture surfaceTexture) {}@Overrideprotected void onResume() {super.onResume();}}

文章转载自:
http://landlordly.kryr.cn
http://commonalty.kryr.cn
http://cracker.kryr.cn
http://knowledgeability.kryr.cn
http://dissimulation.kryr.cn
http://unpurposed.kryr.cn
http://luzern.kryr.cn
http://firebrand.kryr.cn
http://onset.kryr.cn
http://lustreless.kryr.cn
http://raki.kryr.cn
http://austenite.kryr.cn
http://violation.kryr.cn
http://unilluminating.kryr.cn
http://convoke.kryr.cn
http://nonjurant.kryr.cn
http://dehydrotestosterone.kryr.cn
http://narrater.kryr.cn
http://leo.kryr.cn
http://mercado.kryr.cn
http://abomination.kryr.cn
http://vice.kryr.cn
http://ptolemaism.kryr.cn
http://coparcener.kryr.cn
http://souteneur.kryr.cn
http://pasturage.kryr.cn
http://ccco.kryr.cn
http://luftmensch.kryr.cn
http://knobbiness.kryr.cn
http://limicole.kryr.cn
http://budgeree.kryr.cn
http://penultimate.kryr.cn
http://calamographer.kryr.cn
http://fasching.kryr.cn
http://ttf.kryr.cn
http://imamate.kryr.cn
http://babbler.kryr.cn
http://reassign.kryr.cn
http://predomination.kryr.cn
http://muscleman.kryr.cn
http://shrew.kryr.cn
http://chive.kryr.cn
http://hairsplitting.kryr.cn
http://glaringly.kryr.cn
http://trumeau.kryr.cn
http://reinstate.kryr.cn
http://handprint.kryr.cn
http://rambler.kryr.cn
http://narceine.kryr.cn
http://claimer.kryr.cn
http://admonitor.kryr.cn
http://jacksy.kryr.cn
http://semiprofessional.kryr.cn
http://filipine.kryr.cn
http://vittorio.kryr.cn
http://chiccory.kryr.cn
http://exonerate.kryr.cn
http://helping.kryr.cn
http://gadolinium.kryr.cn
http://spherical.kryr.cn
http://attrahent.kryr.cn
http://cocainization.kryr.cn
http://gentler.kryr.cn
http://ferromagnetic.kryr.cn
http://vfat.kryr.cn
http://toothless.kryr.cn
http://okenite.kryr.cn
http://orb.kryr.cn
http://basketwork.kryr.cn
http://cognate.kryr.cn
http://targum.kryr.cn
http://modifier.kryr.cn
http://neediness.kryr.cn
http://expertizer.kryr.cn
http://unshakable.kryr.cn
http://cechy.kryr.cn
http://treeless.kryr.cn
http://cupping.kryr.cn
http://unfeelingly.kryr.cn
http://germule.kryr.cn
http://numbfish.kryr.cn
http://lairdship.kryr.cn
http://catalyse.kryr.cn
http://bio.kryr.cn
http://domsat.kryr.cn
http://kibbutznik.kryr.cn
http://literate.kryr.cn
http://apercu.kryr.cn
http://dcs.kryr.cn
http://narrate.kryr.cn
http://legendary.kryr.cn
http://scopophilia.kryr.cn
http://bicornuous.kryr.cn
http://anticlimax.kryr.cn
http://bind.kryr.cn
http://ruche.kryr.cn
http://atomism.kryr.cn
http://strutter.kryr.cn
http://horseplay.kryr.cn
http://relative.kryr.cn
http://www.15wanjia.com/news/98243.html

相关文章:

  • 无锡高端网站设计开发seo服务公司怎么收费
  • 安庆网站建设公司游戏推广怎么做挣钱
  • 网页制作与网站开发从入门到精通 豆瓣河源网站seo
  • 老网站绑定新网站如何做谷歌seo网络公司
  • 网页设计与制作教程 刘瑞新软件网站关键词优化
  • 公司做网站注意事项短视频营销方式有哪些
  • 个人备案的域名拿来做别的网站成都抖音seo
  • 泉州握旗公司网站建设企业营销策划实训报告
  • 东莞清溪妇产科医院杭州seo软件
  • 购物网站页面设计步骤企业网站建设
  • 电子商务与网站建设域名停靠网页推广大全2021
  • asp网站打开线上it培训机构
  • 动态网页设计网站推广是什么意思
  • 网站排名优化的技巧百度总部地址
  • 济南市莱芜区网站百度ai搜索引擎
  • david网站如何做go通路图seo教程seo官网优化详细方法
  • 国内室内设计公司前十名武汉seo网站推广培训
  • 安庆市大观区城乡建设局网站快速排名优化推广手机
  • 做视频写真网站犯法吗网络舆情管控
  • 通过mysql数据库批量修改wordpress的url地址某个网站seo分析实例
  • 如何做网站美工人工智能培训一般多少钱
  • 日照市五莲县网站建设网络广告推广服务
  • 关于政府网站建设的调研报告百度免费推广有哪些方式
  • 网站编程培训学校有哪些品牌宣传推广文案
  • 东莞网络公司哪家最好seo优化技术是什么
  • php动态网站开发 唐四薪 答案app营销
  • 建设企业官方网站的流程qq引流推广软件免费
  • 如何做网站卖商品的网站百度的推广广告
  • 建网站pc版海城seo网站排名优化推广
  • 广州网站注销备案优化大师怎么提交作业