MediaRecorder 中一个方法setCamera();所以可以先设置好摄像头的参数,然后再设置到MediaRecorder 中(但是录制前需要解锁)。
部分关键的代码如果下:
//初始化相机信息
Camera mCamera = Cameraopen();
CameraParameters params = mCameragetParameters();
mCamerasetDisplayOrientation(90);//旋转了90度,最好先判断下JDK的版本号,再决定旋转不
mCamerasetParameters(params);
mCamerastopPreview();
mCameraunlock();//解锁
videoMediaRecordersetCamera(mCamera);
源码中被用来检查和请求权限的方法分别是Activity的checkSelfPermission和requestPermissions。这些方法api23引入,如下代码:
private static final String TAG = "Contacts";private void insertDummyContact() {
// Two operations are needed to insert a new contact
ArrayList<ContentProviderOperation> operations = new ArrayList<ContentProviderOperation>(2);
// First, set up a new raw contact
ContentProviderOperationBuilder op =
ContentProviderOperationnewInsert(ContactsContractRawContactsCONTENT_URI)
withValue(ContactsContractRawContactsACCOUNT_TYPE, null)
withValue(ContactsContractRawContactsACCOUNT_NAME, null);
operationsadd(opbuild());
// Next, set the name for the contact
op = ContentProviderOperationnewInsert(ContactsContractDataCONTENT_URI)
withValueBackReference(ContactsContractDataRAW_CONTACT_ID, 0)
withValue(ContactsContractDataMIMETYPE,
ContactsContractCommonDataKindsStructuredNameCONTENT_ITEM_TYPE)
withValue(ContactsContractCommonDataKindsStructuredNameDISPLAY_NAME,
"__DUMMY CONTACT from runtime permissions sample");
operationsadd(opbuild());
// Apply the operations
ContentResolver resolver = getContentResolver();
try {
resolverapplyBatch(ContactsContractAUTHORITY, operations);
} catch (RemoteException e) {
Logd(TAG, "Could not add a new contact: " + egetMessage());
} catch (OperationApplicationException e) {
Logd(TAG, "Could not add a new contact: " + egetMessage());
}
}
存在工程里?
好像没听说过可以这样做。
参考百度浏览器对的存储,是把后缀名改成一个不可识别的后缀,然后自己还是可以调用,但是在SD卡里找到他不能直接打开,也不可预览,别的程序也不会查找到。
以上就是关于现在 做了个 android 视频录制的程序 ,后置摄像头总是旋转90度,如何用代码实现正常。全部的内容,包括:现在 做了个 android 视频录制的程序 ,后置摄像头总是旋转90度,如何用代码实现正常。、判断android用户拒绝了某项权限这个问题您解决了吗、android MediaRecorder 录音后如何存在工程里等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)