I use C# xamarin and Nokia 7 plus which install android 9 already. Nokia 7 plus contain zeiss dual back camera. So I think I could get multi camera support
[Activity(Label = "@string/app_name", Theme = "@style/AppTheme", MainLauncher = true)]
public class MainActivity : AppCompatActivity
{
protected override void OnCreate(Bundle savedInstanceState)
{
base.OnCreate(savedInstanceState);
// Set our view from the "main" layout resource
SetContentView(Resource.Layout.activity_main);
var manager = base.GetSystemService(CameraService) as CameraManager;
var dict = manager.GetCameraIdList().ToDictionary((id) => id,(id) => manager.GetCameraCharacteristics(id));
var lens = dict.Values.Select((characteristics) => (
(LensFacing)((int)characteristics.Get(CameraCharacteristics.LensFacing)),
characteristics.Get(CameraCharacteristics.RequestAvailableCapabilities).ToArray<RequestAvailableCapabilities>(),
characteristics.PhysicalCameraIds.ToArray(),
characteristics.Get(CameraCharacteristics.LensPoseRotation),
characteristics.Get(CameraCharacteristics.LensPoseTranslation),
characteristics.Get(CameraCharacteristics.LensIntrinsicCalibration),
characteristics.Get(CameraCharacteristics.LensRadialDistortion),
characteristics.Get(CameraCharacteristics.LensPoseReference)
)).ToArray();
}
}
This code give me 2 camera with 1 front and 1 back correctly. However the capabilities does not contains LogicalMultiCamera
, PhysicalCameraIds
is empty set, and all information about lens pose is null
What am I doing wrong here? Or are there any problem about Nokia, Xamarin, or Android SDK?