GooglePlayServicesComponents
GooglePlayServicesComponents copied to clipboard
Xamarin.GooglePlayServices.MLKit.Text.Recognition missing dependency
Xamarin.Android Version (eg: 6.0):
10
Operating System & Version (eg: Mac OSX 10.11):
Windows 10
Describe your Issue
Xamarin.GooglePlayServices.MLKit.Text.Recognition missing dependency Packages used:
<PackageReference Include="Xamarin.Forms" Version="5.0.0.2012" />
<PackageReference Include="Xamarin.Essentials" Version="1.6.1" />
<PackageReference Include="Xamarin.GooglePlayServices.MLKit.Text.Recognition" Version="116.1.3" />
Build settings (tools)
<AndroidDexTool>d8</AndroidDexTool>
<AndroidUseAapt2>true</AndroidUseAapt2>
Minimal Repro Code Sample
https://github.com/maxvodoo/AccTest/tree/master/AccTest
Steps to Reproduce (with link to sample solution if possible):
1- build solution 2- run the app
Include any relevant Exception Stack traces, build logs, adb logs:
(29172): java.lang.RuntimeException: Unable to get provider com.google.mlkit.common.internal.MlKitInitProvider: com.google.firebase.components.MissingDependencyException: Unsatisfied dependency for component Component<[class com.google.mlkit.vision.text.internal.zzk]>{0, type=0, deps=[Dependency{anInterface=class com.google.mlkit.common.sdkinternal.ExecutorSelector, type=required, injection=direct}, Dependency{anInterface=class com.google.mlkit.vision.text.internal.zzn, type=required, injection=direct}]}: class com.google.mlkit.common.sdkinternal.ExecutorSelector
05-07 04:37:32.744 E/AndroidRuntime(29172): at android.app.ActivityThread.installProvider(ActivityThread.java:7192)
05-07 04:37:32.744 E/AndroidRuntime(29172): at android.app.ActivityThread.installContentProviders(ActivityThread.java:6670)
05-07 04:37:32.744 E/AndroidRuntime(29172): at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6565)
05-07 04:37:32.744 E/AndroidRuntime(29172): at android.app.ActivityThread.access$1400(ActivityThread.java:224)
05-07 04:37:32.744 E/AndroidRuntime(29172): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1887)
05-07 04:37:32.744 E/AndroidRuntime(29172): at android.os.Handler.dispatchMessage(Handler.java:107)
05-07 04:37:32.744 E/AndroidRuntime(29172): at android.os.Looper.loop(Looper.java:224)
05-07 04:37:32.744 E/AndroidRuntime(29172): at android.app.ActivityThread.main(ActivityThread.java:7560)
05-07 04:37:32.744 E/AndroidRuntime(29172): at java.lang.reflect.Method.invoke(Native Method)
05-07 04:37:32.744 E/AndroidRuntime(29172): at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:539)
05-07 04:37:32.744 E/AndroidRuntime(29172): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:950)
05-07 04:37:32.744 E/AndroidRuntime(29172): Caused by: com.google.firebase.components.MissingDependencyException: Unsatisfied dependency for component Component<[class com.google.mlkit.vision.text.internal.zzk]>{0, type=0, deps=[Dependency{anInterface=class com.google.mlkit.common.sdkinternal.ExecutorSelector, type=required, injection=direct}, Dependency{anInterface=class com.google.mlkit.vision.text.internal.zzn, type=required, injection=direct}]}: class com.google.mlkit.common.sdkinternal.ExecutorSelector
05-07 04:37:32.744 E/AndroidRuntime(29172): at com.google.firebase.components.ComponentRuntime.processDependencies(ComponentRuntime.java:324)
05-07 04:37:32.744 E/AndroidRuntime(29172): at com.google.firebase.components.ComponentRuntime.discoverComponents(ComponentRuntime.java:139)
05-07 04:37:32.744 E/AndroidRuntime(29172): at com.google.firebase.components.ComponentRuntime.<init>(ComponentRuntime.java:91)
05-07 04:37:32.744 E/AndroidRuntime(29172): at com.google.firebase.components.ComponentRuntime.<init>(ComponentRuntime.java:65)
05-07 04:37:32.744 E/AndroidRuntime(29172): at com.google.mlkit.common.sdkinternal.MlKitContext.zza(com.google.mlkit:common@@17.1.1:6)
05-07 04:37:32.744 E/AndroidRuntime(29172): at com.google.mlkit.common.internal.MlKitInitProvider.onCreate(com.google.mlkit:common@@17.1.1:3)
05-07 04:37:32.744 E/AndroidRuntime(29172): at android.content.ContentProvider.attachInfo(ContentProvider.java:2117)
05-07 04:37:32.744 E/AndroidRuntime(29172): at android.content.ContentProvider.attachInfo(ContentProvider.java:2091)
05-07 04:37:32.744 E/AndroidRuntime(29172): at com.google.mlkit.common.internal.MlKitInitProvider.attachInfo(com.google.mlkit:common@@17.1.1:3)
05-07 04:37:32.744 E/AndroidRuntime(29172): at android.app.ActivityThread.installProvider(ActivityThread.java:7187)
05-07 04:37:32.744 E/AndroidRuntime(29172): ... 10 more
Notes:
find ./generated -name "*.MlKitInitProvider.cs"
./generated/com.google.mlkit.common/obj/Release/monoandroid90/generated/src/Xamarin.Google.MLKit.Common.Internal.MlKitInitProvider.cs
com.google.android.gms.play-services-mlkit-text-recognition.csproj
Project references:
<ProjectReference Include="..\..\generated\com.google.android.gms.play-services-base\com.google.android.gms.play-services-base.csproj" PrivateAssets="none" />
<ProjectReference Include="..\..\generated\com.google.android.gms.play-services-basement\com.google.android.gms.play-services-basement.csproj" PrivateAssets="none" />
<ProjectReference Include="..\..\generated\com.google.android.gms.play-services-clearcut\com.google.android.gms.play-services-clearcut.csproj" PrivateAssets="none" />
<ProjectReference Include="..\..\generated\com.google.android.gms.play-services-tasks\com.google.android.gms.play-services-tasks.csproj" PrivateAssets="none" />
<ProjectReference Include="..\..\generated\com.google.firebase.firebase-components\com.google.firebase.firebase-components.csproj" PrivateAssets="none" />
<ProjectReference Include="..\..\generated\com.google.firebase.firebase-encoders\com.google.firebase.firebase-encoders.csproj" PrivateAssets="none" />
<ProjectReference Include="..\..\generated\com.google.firebase.firebase-encoders-json\com.google.firebase.firebase-encoders-json.csproj" PrivateAssets="none" />
<ProjectReference Include="..\..\generated\com.google.mlkit.common\com.google.mlkit.common.csproj" PrivateAssets="none" />
<ProjectReference Include="..\..\generated\com.google.mlkit.vision-common\com.google.mlkit.vision-common.csproj" PrivateAssets="none" />
find ./generated -name "*.Zzk.cs"
None.
find ./generated -type f -name "api.xml" -exec grep -Hni "com.google.mlkit.vision.text.internal.zzk" {} \;
./generated/com.google.android.gms.play-services-mlkit-text-recognition/obj/Release/monoandroid90/api.xml:3275:
<class abstract="false" deprecated="not deprecated" extends="java.lang.Object" extends-generic-aware="java.lang.Object" jni-extends="Ljava/lang/Object;" final="true" name="zzk" static="false" visibility="public" jni-signature="Lcom/google/mlkit/vision/text/internal/zzk;">
@maxvodoo Thanks for reporting and the repro sample! Appreciated!
How can I get Text from task.Result?
var barcode = task.Result.JavaCast<Android.Runtime.JavaList<Barcode>>(); foreach(Barcode item in barcode) { Console.WriteLine(item.DisplayValue); }