Проблема при использовании chaquopy для подключения Python к Java в обновленной Android Studio Ladybug 2024.Android

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 Проблема при использовании chaquopy для подключения Python к Java в обновленной Android Studio Ladybug 2024.

Сообщение Anonymous »

Я столкнулся с проблемой, когда пытаюсь соединить свой файл Python с основным кодом Java моего приложения для Android в Android Studio ladybug 2024 с помощью плагина chaquopy.
Мотив моего Приложение состоит в том, чтобы щелкнуть фотографию или выбрать ее из галереи, а затем обработать изображение с помощью OpenCV в моем файле Python, а затем указать область объекта (яблоко) на изображении. Я создал функцию Python, которая будет принимать путь к изображению. , получите к нему доступ и верните результат в код основной активности Java. Он говорит, что произошла некоторая ошибка типа данных, поэтому он напрямую выполняет блок catch и печатает ошибку вместо желаемого результата.
Вот мой Java-код. Я новичок в разработке приложений для Android.
@SuppressLint("SetTextI18n")
private void processImage(Uri imageUri) {
try {
// Ensure Chaquopy is initialized
Python py = Python.getInstance();

// Get the Python module and call the method
PyObject pyModule = py.getModule("Calorie"); // The name of your Python file without .py
//String imageUriString = imageUri.toString();
String imagePath = getRealPathFromURI(imageUri);

PyObject pyResult = pyModule.callAttr("calculate_area_and_calories", imagePath); // Pass the image path

// Assuming your Python function returns a dictionary with keys "area" and "calories"
String area = String.valueOf(pyResult.asMap().get("area"));
String calories = String.valueOf(pyResult.asMap().get("calories"));

// Update the resultText with dynamic values
resultText.setText(String.format("Area: %s cm²\nCalories: %s kcal", area, calories));
//resultText.setText("Area: 100 cm²\nCalories: 52 kcal");
} catch (Exception e) {
// Handle any exceptions
//e.printStackTrace();
resultText.setText("Error processing image: " + e.getMessage() + "," + e.getCause());
}
}


Подробнее здесь: https://stackoverflow.com/questions/793 ... oid-studio
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Android»