Имя: Пароль:
1C
1С v8
Кто-нибудь отлаживал NDK (С++, неуправляемый код) Android через VisualGBD ?
0 H A D G E H O G s
 
04.03.19
21:03
Дня доброго.
Собственно, вкуриваю сабж 3 сутки
http://catalog.mista.ru/public/987286/

Механизм понятен, все понятно, непонятно, как отлаживать неуправляемую часть кода.
Пересобрал МобильныйКлиент с флагом debugable и размещением gbdserver в папке lib, как сказал вот этот заморский перец.

https://sysprogs.com/w/forums/topic/the-apk-file-does-not-contain-gdbserver-for-x86/

Насколько я понял, у него частично взлетело, в части именно своей либы.

У меня VisualGBD дает отлуп
"Указаны некоррентые знаки в пути".
Никаких логов он не дает.

Раньше, пока не разместил gbdserver в папке lib - VisualGBD ругался на его отсутствие.
Я иду по правильному пути, вроде.

Кто работал с VisualGBD ?
Как отлаживать неуправляемый код из Visual C++
2 palsergeich
 
04.03.19
21:12
(0) А ты ему напиши на почту
3 H A D G E H O G s
 
04.03.19
21:12
(2) А у него нет почты.
5 Garykom
 
гуру
04.03.19
21:30
https://habr.com/ru/post/144672/

4) В gdb.setup указываются базовые настройки дебаггера — в каких каталогах искать заголовки и библиотеки. Надо проверить, все ли пути к заголовкам указаны и, при необходимости, дописать свои пути.

Здесь лежат грабли. Почему-то при каждой пересборке в этом файле сбиваются символы переноса строк, из-за чего настройки не считываются. Следует убедится, что в файле применен UNIX-перенос строк. Мне приходилось после каждого вызова ndk-build пересохранять gdb.setup с другим переносом строк!
6 palsergeich
 
04.03.19
21:31
(3) Я тебе на почту в личке выслал
7 palsergeich
 
04.03.19
21:31
(3) На самом деле почта его есть на открытых источниках - в видео с ИС на последнем слайде)
8 Garykom
 
гуру
04.03.19
21:34
(5)+ "Указаны некоррентые знаки в пути" возможно намекает
9 jsmith82
 
04.03.19
21:39
ты наконец-то слез с паскаля? поздравляю
10 H A D G E H O G s
 
04.03.19
21:40
(9) Да это просто кусок жопы, этот C++
Сам Visual C++ милый, быстрый и удобный а вот язык - уебищен.
11 H A D G E H O G s
 
04.03.19
21:40
(5) Сейчас посмотрим
12 H A D G E H O G s
 
04.03.19
21:41
(6) Блин, я думал, ты почту чувака англоязычного выслал, вот еще удивился. Игорю я и так в Инфостарте написал уже, но его пока нет.
13 Garykom
 
гуру
04.03.19
22:03
(10) Сам язык просто слишком древний и слишком низкоуровневый.

Работа с динамическими объектами просто мрак без каких то доп. либ.
Да и любой чих в сторону от стандарта ищи либы.

А любые сторонние либы это жуткий нестандарт на платформах отличных от тех под которые они написаны
14 Garykom
 
гуру
04.03.19
22:09
(11) Еще стандартной ошибки с не латинскими символами в путях (в т.ч. полный путь проекта на винде) нет?
Ну и как вариант попробовать отладку из студии под Linux запущенной, помнится у разрабов Windows вторична.
15 H A D G E H O G s
 
04.03.19
22:10
(14) Первый делом проверил. Нет у меня проектов с кириллицей, это я впитал с молоком win9x
16 Casey1984
 
05.03.19
03:37
(10) Привыкнешь - полюбишь )
17 H A D G E H O G s
 
06.03.19
01:31
(16) СОмнительно.
Особенно, когда я вижу вот такие темы
http://qaru.site/questions/11023/easiest-way-to-convert-int-to-string-in-c
18 NorthWind
 
06.03.19
07:21
(17) а что в этой теме не так? Ну, обсуждают разные варианты. да их полно в любом языке, где более одной библиотеки. И что с того?
19 Кирпич
 
06.03.19
08:47
(17) Да фигня. Если самому писать, то ничо страшного. Ты же паскалист и ты себе не будешь писать какую нибудь херь типа
a = a++ - b-- + ++b - ++d;
20 H A D G E H O G s
 
07.03.19
22:15
После недели обитания в VC++
С++ уже не кажется такой шлепанутой.
21 Сияющий в темноте
 
07.03.19
22:28
Чем вам Си++ не угодил?
очень замечательный язык,и можо практически всё
а на андройд то вам на сях зачем?
и потом андройд,это линукс подобная система,а там проще какой нить gcc
22 H A D G E H O G s
 
07.03.19
22:34
(21) ВК под Мобильный клиент пишу
23 Сияющий в темноте
 
07.03.19
23:03
А не проще ли написать приложение и вызывать его из 1с?
24 PloAl
 
08.03.19
13:28
(21) +1
Читал статью про JNI, в самом начале было написано, обычно приложения на с++ считаются самыми быстрыми, но не в этом случае. И поэтому не рекомендуется реализовывать функционал на с++ тот же что можно реализовать на java.
Помню сделал, ВК передающую интенты в МП и также разобрался как напрямую передать интент. Сравнил время, передаются несколько килобайт данных по сети 0,8сек. ВК и 0,08сек. интент напрямую в МП.
25 H A D G E H O G s
 
09.03.19
12:50
(23) Нет. Мне надо события от Android получать
26 H A D G E H O G s
 
11.03.19
00:16
Настал тот момент, когда ты со спокойной душой правил код в Visual Studio C++, наивно полагая, что каждое твое сохранение логируется и можно откатиться (как ты привык в Delphi), а потом узнал, что нет.

Жестяночка жесткая.
27 Garykom
 
гуру
11.03.19
00:19
(26) Для этого git прикручивают, хотя бы между сборками копии сохранять
28 Garykom
 
гуру
11.03.19
00:21
(27)+ Точнее оно сохраняет как раз между сборками, а вот после нет если успешно скомпилировалось.
29 H A D G E H O G s
 
11.03.19
00:26
Ктож знал то
30 H A D G E H O G s
 
11.03.19
00:26
Я думал, это из коробки
31 Garykom
 
гуру
11.03.19
00:34
Ты лучше объясни почему наивный код под android пытаешься в VS2017 писать вместо того чтобы в Android Studio это делать?
https://developer.android.com/studio/projects/add-native-code
32 H A D G E H O G s
 
11.03.19
00:42
(31) На Инфостарте пример в VS Studio.
Надо сделать, я уже рядом.
Потом посмотрю в Android
33 Garykom
 
гуру
11.03.19
00:47
Кстати я 1С не понимаю, когда они уже сделают "технологию веб-компонент".
По сути в клиента встроить http-сервер простейший чтобы обратные вызовы получать.

Тогда можно будет с этими ВК больше не извращатся а все через сервисы делать написанные на чем угодно по правилам.
34 H A D G E H O G s
 
11.03.19
01:02
Кстати, я не понимаю, VS Studio.
Беру свои слова назад, по ощущениям, попал в затерянный мир к носорогам.
Приходится придумывать велосипеды, когда в той же Дельфи для Андроида давно уже все есть

class function TAndroidHelper.StringToJString(const Str: string): JString;
var
  LocalRef: JNIObject;
  PEnv: PJNIEnv;
begin
  PEnv := TJNIResolver.GetJNIEnv;
  LocalRef := StringToJNIString(PEnv, Str);
  Result := TJString.Wrap(LocalRef);
  PEnv^.DeleteLocalRef(PEnv, LocalRef);
end;
35 H A D G E H O G s
 
11.03.19
01:17
- Что там за шум на улице, Бэрримор?
36 Garykom
 
гуру
11.03.19
01:19
(34) Это не проблема IDE а проблема С++

Те кто пишут на нем извращенцы, если есть выбор писать на чем то лучше
37 H A D G E H O G s
 
11.03.19
01:29
(36) Я согласен.
Я убил 1 неделю своей жизни, чтобы освоить native vk для МК.
Я щастлив.
Помощи от Игоря Кисиля я не дождался, хотя и предлагал деньги.
Вроде все шишки собрал, а их там бохато.
Но, зато, могу писать ВК без регистрации и СМС.
38 Сияющий в темноте
 
11.03.19
12:01
(25)события о Андюши прекрасно получает служба,просто надо их как то потом в 1с перегнать,например,через web-сервис,есть мнение,что оно будет быстрее и проще в реализации,чем изобретать компоненту,которая потом банально может не поставиться.