Бесплатная библиотека нечеткой логики, не может разобрать файл на Android

Я разрабатываю приложение для Android / iOS / Windows с использованием кода C ++ для основной логики. Приложение использует бесплатную библиотеку нечеткой логики и прекрасно работает на Windows Mobile, iOS и на моей локальной машине с Ubuntu, но не вполне работает под Android.

Приложение читает файл .fcl с SD-карты, а затем анализирует его, используя бесплатный анализатор библиотеки нечеткой логики. Проблема в том, что синтаксический анализатор застревает на случайных этапах парсинга.

Некоторые примечания к настройкам моего проекта:

  • Я включил в Android разрешения на чтение / запись для sdcard в manifest.xml.

  • Код, который я пытаюсь запустить, является базовым примером с бесплатного веб-сайта библиотеки нечеткой логики.

  • Я использую библиотеку stlport_static для поддержки stl и флаг компилятора -frtti.

Мой вопрос: Я что-то упустил для Android, например, кодировку файла или некоторые разрешения, которые я не установил?

Некоторые заметки, о которых я думал:

  • Сжатие файлов не должно быть проблемой, потому что, насколько мне известно, файлы на SD-карте не сжимаются, и я могу проанализировать файл частично.

  • Использование других библиотек нечеткой логики не допускается, потому что я не могу использовать лицензированные библиотеки GPL. Единственная другая библиотека, которую я нашел, не имела инструкции / как и не могла разобрать стандарт fcl.

  • Бесплатная библиотека нечеткой логики использует много wchar_t, что может быть проблемой.

Спасибо за ваше время и, надеюсь, за помощь;)

1

Решение

Хорошо, после просмотра некоторых руководств по Android и некоторых злоупотреблений Google я нашел проблему. В настоящее время Android не поддерживает тип wchar_t. Ну, вы можете использовать его, но результаты не будут такими же, как в любой другой операционной системе.

Изменив все типы wchar_t и wstring в свободной библиотеке нечеткой логики на соответствующие им типы char и string, я смог заставить парсер работать. Ну, вроде бы, есть еще некоторые несоответствия в ловкости, но я ничего не могу с этим поделать;).

Заключение: Не используйте широкие символы в программах Android C ++.

Спасибо за ваше время & Помогите

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector