Java 打开摄像头后未调用onActivityResult
因此,我试图显示相机拍摄的图像,并希望稍后通过套接字发送,但我注意到onActivityResult()方法未被调用,现在导致了进一步的问题。我用的是结果_OK,但是检查它的值,这样它就不是负数了。此外,在清单中,我没有限制任何东西。所以我(希望我)基本上检查了常见的错误,仍然无法控制自己 主要活动 显示Java 打开摄像头后未调用onActivityResult,java,android,camera,onactivityresult,Java,Android,Camera,Onactivityresult,因此,我试图显示相机拍摄的图像,并希望稍后通过套接字发送,但我注意到onActivityResult()方法未被调用,现在导致了进一步的问题。我用的是结果_OK,但是检查它的值,这样它就不是负数了。此外,在清单中,我没有限制任何东西。所以我(希望我)基本上检查了常见的错误,仍然无法控制自己 主要活动 显示 谢谢你的帮助 使用下面的代码从照相机获取位图图像 if(data.getData()==null){ bitmap = (Bitmap)data.getExtras().ge
谢谢你的帮助 使用下面的代码从照相机获取位图图像
if(data.getData()==null){
bitmap = (Bitmap)data.getExtras().get("data");
}else{
bitmap = MediaStore.Images.Media.getBitmap(this.getContentResolver(), data.getData());
}
然后将这个位图转换成字节数组我找到了答案!我必须在onActivityResult()中重新初始化ImageView:)
感谢@Sandeep dhiman 希望这可以帮助您我调用了setResult,现在它在拍照后调用该方法。但打开相机后,主活动崩溃,因为我在output.write(byteFromImage);(输出)处从byteFromImage获得一个空指针;。这对我来说没有意义,因为该方法是在onActivityResult()方法之后调用的,这是因为您的位图没有完全转换为字节数组。是的,位图似乎是空的,因为setImageBitmap给了我一个空指针,这样检索它有什么不对?
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.education.client">
<uses-permission android:name="android.permission.INTERNET"/>
<uses-feature android:name="android.hardware.camera"
android:required="true" />
<application
android:noHistory="true"
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
if(data.getData()==null){
bitmap = (Bitmap)data.getExtras().get("data");
}else{
bitmap = MediaStore.Images.Media.getBitmap(this.getContentResolver(), data.getData());
}