- Home /
Error while running higher versions of Conflunet Kafka inside Unity and while packaging it into an APK
Objective: Unity application packaged and deployed on Android. The application reads the video stream from the device camera and streams it to the server-side components to apply ML model. Returns the inference to the application to be rendered on the user screen
Environment, Tools and Frameworks *Windows10 *Android - Versions 7.0 and above. *Unity version 2020.3.12f1 *Packages imported: -Confuent kafka : 1.0.0 to 1.8.2 -librdkafka.redlist: 1.0.0 to 1.8.2
1) Error while running the application in Unity: Confluent.kafka.dll' will not be loaded due to errors: is the assembly missing or incompatible with the current platform?
Here is the part of the code in Unity where I am facing issues(Just including the part which is relevant) Confluent.Kafka.dll files from 1.0.0 to 1.8.2 not supported in the unity 2020.3.12f1 version The class(consumerBuilder) I'm trying to access is available only in the above-mentioned versions. What is the compatible version of the Confluent.Kafka plugin that could be used in the aforesaid version of Unity
// Starting the consumer
using (var consumer = new ConsumerBuilder<Null, string>(consumerConfig).Build())
{
var timeString = DateTime.Now.ToString("hh:mm:ss");
Debug.Log(timeString);
consumer.Subscribe(kafkaTopic);
try
{
while (true)
{
var consumeResult = consumer.Consume();
Debug.Log("The base64 is: " + consumeResult.Message.Value);
}
}
catch (Exception)
{
consumer.Close();
Debug.Log("Consumer Closed");
}
}
2) Error while running and the Unity application on Android
DllNotFoundException: Unable to load DLL 'librdkafka: The specified file could not be found.(Checked using the LogCat)
When the application build is done and deployed into the android phone(Version 10.0) the above said error pops up and when searched for the required libraries i.e, librdkakafa.so and include the same, the same error message persist, is there any specific package available for the librdkafka for android armeabi-v7/arm64 architecture? Or is there any means to build a shared library that suits the needs for the said architecture? Thanks in advance.
Environment:
*Windows 10 *Unity version(Used to build the application): 2020.3.12f1 *Android version: 6.0(Marshmellow) or above. *Packages imported: -Confuent kafka : 0.9.4 -librdkafka.redlist: 0.9.4