Использование библиотеки Retrofit в проектах на Андроид

Публикация № 1148840 04.11.19

Разработка - Мобильная разработка

Retrofit WorkManager 1C HTTP-сервис Android

Использование библиотеки Retrofit в проектах на Андроид для обмена данными с 1С с помощью HTTP-сервисов, с примерами и готовым рабочим шаблоном.

Решил вот написать статью. Так как писать статьи я не умею, прошу сильно не пинать за возможные ошибки.
Написать статью меня сподвигла вот эта вот публикация
//infostart.ru/public/463387/

В свое время для одного своего проекта на Андроид на базе этой публикации я делал обмен с 1С через WEB-Сервисы. Так как я был начинающим программистом на Андроид, алгоритм получился немного громоздким, т.к. в результате обмена я получал xml файл, который, в итоге,  надо было еще парсить средствами Андроид. Что-то типа вроде этого.

       try {
            XmlPullParser xpp = prepareXpp();
            while ((xpp.getEventType() != XmlPullParser.END_DOCUMENT)) {
                switch (xpp.getEventType()) {
                    case XmlPullParser.START_DOCUMENT:
//                        Log.d(LOG_TAG, "XmlPullParser.START_DOCUMENT Start document");
                        break;
                    case XmlPullParser.START_TAG:
  //                      Log.d(LOG_TAG, "XmlPullParser.START_TAG " + xpp.getName() + " " + xpp.getDepth());
                        switch (xpp.getDepth()) {
                            case 2:
                                data = new Bundle();
                                break;
                            case 3:
                                tagName = xpp.getName();
                        }

//                        if (xpp.getName().equals(XML_NODE_NAME_CONTACT)) {
//                            data = new Bundle();
//                        } else {
//                            tagName = xpp.getName();
//                        }
                        break;
                    case XmlPullParser.END_TAG:
//                        Log.d(LOG_TAG, "XmlPullParser.END_TAG " + xpp.getName());
                        tagName = "";
                        if (xpp.getDepth() == 2) {
                            addDataContact(data);
  //                          Log.d(LOG_TAG,data.get("FullName").toString());
    //                        Log.d(LOG_TAG,"ADD DATA");
                            //breakProgram = true;
                        }
                        break;
                    case XmlPullParser.TEXT:
      //                  Log.d(LOG_TAG, "XmlPullParser.TEXT "  + xpp.getText());
                        if (xpp.getDepth() == 3) {
                            String dataText = xpp.getText();
                            if (dataText == null) {
                                dataText = "";
                            };
                            data.putString(tagName, dataText);
                        }
//                        if (!tagName.isEmpty()) {
//                          data.putString(tagName, xpp.getText());
//                        }
                        break;
                    default:
                        break;

                }
                //if (breakProgram) break;
                xpp.next();
            }
        }catch (XmlPullParserException e) {
            //e.printStackTrace();
            DataXML.append(e.toString());
            sendMessage(MainActivity.STATUS_ERR);
            return "false";

//            Log.d(LOG_TAG, e.toString());
        }catch (Exception e) {
            //e.printStackTrace();
            DataXML.append(e.toString());
            sendMessage(MainActivity.STATUS_ERR);

//            Log.d(LOG_TAG, e.toString());
            return "false";
        }
     return "true";
    }

Да и тестирование WEB-сервиса тоже требовало определенных усилий и дополнительного софта. Библиотека ksoap, с помощью которой можно работать с WEB-Сервисами, не внушала у меня особого доверия, может я в ней не разобрался тогда до конца, может еще были причины. В общем, для меня все это было громоздким и устаревшим.

К тому же злые языки в 1С утверждали, что WEB-Сервисы - это вчерашний день и настоятельно рекомендовали переходить на HTTP-сервисы. И я не мог с ними не согласиться. И начал искать альтернативу. В поисках альтернативы наткнулся на библиотеку под названием Retrofit. Это HTTP клиент реализующий REST архитектуру. Выражаясь просто, ее можно использовать для обмена с 1С с помощью HTTP-сервисов. В дополнении к этому, эта библиотека умеет работать с json, но самое важное, что при работе с ней, программист оперирует классами (моделью). Т.е. получая результат от сервера, я работаю не с сырыми данными в виде xml или json, а уже готовыми классами.

Как это работает?

Например, у нас есть некоторые данные, которые надо получить из 1С. Средствами 1С легко получить данные в формате json. Создаем на стороне 1С HTTP-сервис, который принимает запрос и возвращает результат в виде json.

 

 

Функция ПолучитьПередатьДанные(Запрос)
	СтруктураРезультата = ОбменДанными.ПолучитьОбработатьДанные(Запрос);
	Ответ = Новый HTTPСервисОтвет(СтруктураРезультата.КодСостояния);
	Ответ.УстановитьТелоИзСтроки(СтруктураРезультата.РезультатВыполнения);	
	Возврат Ответ;	
КонецФункции

Подключаем к своему проекту Retrofit. 

// retrofit
    implementation 'com.squareup.retrofit2:retrofit:2.6.2'
    implementation 'com.squareup.retrofit2:converter-gson:2.6.2'


Создаем интерфейс, где будут наши методы для запроса или отправки данных
 

public interface ApiService {
    @GET("{secondURL}/{id}/products")
    Call<List<RetrofitProduct>> getListProducts(@Path(value =  "secondURL", encoded = true) String secondURL, @Path("id") String id_client);
}

RetrofitProduct - это класс, список объектов которого будут созданы библиотекой автоматически, при успешном получении данных с сервера.

public class RetrofitProduct {
    @SerializedName("ID")
    @Expose
    private String iD;
    @SerializedName("name")
    @Expose
    private String name;
    @SerializedName("name")

// далее геттеры и сеттеры
}

Кстати, его можно автоматически сгенерировать на этом вот сайте https://www.jsonschema2pojo.org/
если у вас есть данные в формате  json.


Создаем класс синглтон для настройки клиента и авторизации на стороне 1С  

public class RetrofitClient {
    private static Retrofit retrofit = null;
    // временно, логин и пароль для подключения будем хранить в настройках?
    private static String user = "admin";
    private static String pwd = "admin";

    public static Retrofit getClient(String baseUrl) {
        if (retrofit == null) {
            OkHttpClient okHttpClient = new OkHttpClient.Builder()
                    .readTimeout(300, TimeUnit.SECONDS)
                    .addInterceptor(new BasicAuthInterceptor(user, pwd))
                     .build();


            retrofit = new Retrofit.Builder()
                    .baseUrl(baseUrl)
                    .client(okHttpClient)
                    .addConverterFactory(GsonConverterFactory.create())
                    .build();



        }
        return retrofit;
    }

}

Для авторизации на стороне 1С используем класс BasicAuthInterceptor

class BasicAuthInterceptor implements Interceptor{
    private String credentials;

    public BasicAuthInterceptor(String user, String password) {
        credentials = Credentials.basic(user, password);
    }

    @Override
    public Response intercept(Chain chain) throws IOException {
        Request request = chain.request();
        Request authenticatedRequest = request.newBuilder()
                .addHeader("Authorization", credentials)
                .build();
        return chain.proceed(authenticatedRequest);
    }

}


определим класс для инициализации библиотеки
 

public class ApiUtils {
    private static String BASE_URL;
    private ApiUtils(){}

    public static ApiService getAPIService() {
        BASE_URL = App.getBaseURL();
        try {
            return RetrofitClient.getClient(BASE_URL).create(ApiService.class);
        }catch (Exception e) {
            MyLog.e(e.toString());
            return null;
        }


    }

}

Инициализация клиента в коде

mApiService = ApiUtils.getAPIService();
  if (mApiService == null) {
          return;
  }

И собственно дергаем нужный нам метод

   try {
            response = mApiService.getListProducts(
                    App.getDefaultSecondURL(), App.CONSTANT_ID_PARTNER)
                        .execute();
            if (response.isSuccessful()) {
                somethingToDo(response.body()); // тут у нас List<RetrofitProduct>

            }else {
                String errorMessage = response.raw().toString() + "\n" //response.raw() - сырые данные, можно получить ответ сервера
                        + response.errorBody().string();

           }
        }catch (IOException e) {
            // обработка исключения;
        }

Есть два варианта вызова, синхронный и асинхронный. Синхронный вызов execute() не допускается в UI-потоке. В моем случае я использую WorkManager, который выполняет задачи в своем потоке. 

Асинхронный вызов выглядит вот так
 

       mApiServiceRetrofit.getProduct(App.getDefaultSecondURL(), App.CONSTANT_ID_PARTNER).enqueue(new Callback<RetrofitProduct>() {
            @Override
            public void onResponse(Call<PostCoordinates> call, Response<PostCoordinates> response) {
                if (response.isSuccessful()) {
                   
                }else {

               }

            }
            @Override
            public void onFailure(Call<PostCoordinates> call, Throwable t) {
                


            }
        });

Можно вызывать из Activity или из Service. Но, как я уже писал выше, я использую WorkManager (https://developer.android.com/reference/androidx/work/WorkManager.html)
Он позволяет запускать фоновые задачи последовательно или параллельно, передавать в них данные, получать из них результат, отслеживать статус выполнения и запускать только при соблюдении заданных условий. И еще, на получения результата работы можно на него подписаться, что очень удобно.
 

       LiveData<WorkInfo> ld = WorkManager.getInstance().getWorkInfoByIdLiveData(workID);
        ld.observe(context, new Observer<WorkInfo>() {
            @Override
            public void onChanged(WorkInfo workInfo) {
                if (workInfo.getState().isFinished()) {
                  // to do
                  }
            }
        });

В результате, программист получает отличный и простой инструмент для обмена данными с 1С. При этом можно не только получать данные с помощью HTTP-запроса GET, но также и передавать данные с помощью HTTP-запроса POST.

 

Полное описание библиотеки на сайте разработчика: https://square.github.io/retrofit/
Для ленивых написал простой проект с одним activity, который реализует работу с Retrofit, а также с WorkManager. Проект полностью рабочий, подключаете к Android Studio и можете сразу же пробовать. Без настроек на свой сервер будете получать ответ в виде Toast, об ошибке подключения :)

Надеюсь, что статья сэкономит кому то время (и деньги) :)
 

Скачать файлы

Наименование Файл Версия Размер
Рабочий проект с примером работы с Retrofit и WorkManager

.7z 7,94Mb
5
.7z 1.1 7,94Mb 5 Скачать

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. dusha0020 965 04.11.19 13:03 Сейчас в теме
Может стоит "данные в формате Gson" заменить по тексту на json?
Gson это библиотека Андроида для работы с json, а не формат данных.
2. WKBAPKA 226 04.11.19 13:51 Сейчас в теме
(1) да, верно! спасибо, не обратил внимание
3. FEAS88 8 12.05.20 14:01 Сейчас в теме
Спасибо за статью, помогла. Спасибо за идею авторизации через Interceptor

У меня пара вопросов:
1. Авторизация через клиента это аналог ?

OkHttpClient okHttpClient = new OkHttpClient.Builder()
.readTimeout(300, TimeUnit.SECONDS)
.addInterceptor(new BasicAuthInterceptor(user, pwd))
.authenticator(...)
.build();

2. Interceptor перехватывает все запросы ?


PS
Я начал с retrofit, возникла ошибка, потом спустился ниже okhttp и UrlHttpConection
ошибка осталась и я грешил на авторизацию, думал не правильно делаю. А оказывается у меня проблема была в другом, и сразу все уже работало.
Была запрещена работа через не защищенное соединение. в Манифесте прописал и готово!

Если кто работал с сертификатами ssl, и использовании их в андроид поделитесь опытом буду благодарен.
4. WKBAPKA 226 12.05.20 15:23 Сейчас в теме
(3) насколько я помню OKHTTP3 включен в состав библиотеки. Можно почитать у них на сайте.
А что касается защищенного соединения, то в манифесте ничего прописывать не надо. Нужно только получить разрешение на работу с Internet.
5. WKBAPKA 226 12.05.20 15:24 Сейчас в теме
(3) я в нескольких проектах выполняю запросы по защищенному соединению и ничего дополнительно не настраивал.
6. FEAS88 8 12.05.20 16:12 Сейчас в теме
(5) Если Https то ничего не надо согласен.

Я имел ввиду что если соединение НЕ защищенное, то будет ошибка, Android разрешает по умолчанию только https.

Потому что на сервере у меня нет https, сертификата , я прописывал разрешение.
7. WKBAPKA 226 12.05.20 18:00 Сейчас в теме
(6) странно, я пробовал и так и так. Возможно, это потому, что сервер использует SSL, а вы пытаетесь по http обратиться. Я с этим не сталкивался.
8. WKBAPKA 226 12.05.20 18:02 Сейчас в теме
(6) не могу подсказать, не сталкивался... как то попробую ради интереса.
9. Umix 127 05.09.20 09:54 Сейчас в теме
Здравствуйте.
Как насчет открытого получения логина/пароля, т.е. ставите "слушателя" на устройство и получаете данные для доступа к серверу.
10. WKBAPKA 226 05.09.20 13:28 Сейчас в теме
(9) не совсем понятен вопрос.
для получения информации на мобильное устройство, если оно выступает как слушатель, понадобиться некий промежуточный сервер.
а для авторизации на сервере 1С можно не использовать логин и пароль, если настроить авторизацию на сервере
11. Umix 127 05.09.20 19:32 Сейчас в теме
Поясню.
Есть приложение на мобильном устройстве, которое обменивается данными с 1С через веб или http сервисы.
На это же мобильное приложение устанавливаю приложение типа снифера.
При использовании ksoap логин и пароль легко отловить через снифер.
Использование данной библиотеки решает эту задачу?
12. WKBAPKA 226 05.09.20 19:39 Сейчас в теме
(11) как я понимаю, тут не от библиотеки зависит, а от протокола, по которому передаются данные. Если вы передаете данные по защищенному протоколу, то данные передаются в шифрованном виде...
но, думаю, что если кто то захочет получить логин пароль для соединения с сервером, вряд-ли он будет мучаться с дешифровкой передаваемых данных. APK файл легко можно открыть... если логин и пароль будут храниться в ресурсах, то найти будет не сложно. Если в коде, то тоже, если покопаться, можно будет найти.
13. WKBAPKA 226 05.09.20 19:41 Сейчас в теме
(11) если уж защищаться, то тогда надо уже использовать более сложные и продвинутые методы защиты.
На стороне 1С можно настроить авторизацию по умолчанию, а вот идентификацию самого пользователя нужно будет настраивать по своему, с помощью дополнительного логина и пароля, например.
14. WKBAPKA 226 05.09.20 19:42 Сейчас в теме
15. Umix 127 05.09.20 19:48 Сейчас в теме
Дело не в Guard - это типичный простенький обфусикатор и при желании можно все разобрать.
Логин / пароль внутри приложения шифруется. Но передается то он уже в чистом виде)) А это можно отловить. Вот мне и интересно, можно ли как-то работать с тем же удаленным сервером и при этом защитить доступ.
16. WKBAPKA 226 05.09.20 19:50 Сейчас в теме
(15) он не так уж и прост, если в нем разобраться.
А что значит, логин пароль шифруется? Ну шифруется и дальше что?
Что мне мешает, как хацкеру использовать шифрованный логин пароль для получения доступа?
18. Umix 127 05.09.20 20:03 Сейчас в теме
(16) получив шифрованный пароль парсером или иным способом его использовать не представляется возможным.
19. WKBAPKA 226 05.09.20 20:05 Сейчас в теме
(18) зачем его парсить когда его можно использовать в шифрованном виде?!
20. Umix 127 05.09.20 20:06 Сейчас в теме
(19) в шифрованном - это лишь мусор.
22. WKBAPKA 226 05.09.20 20:07 Сейчас в теме
(18) HTTP сервис не дает вам доступ к серверу, верно? он лишь дает вам возможность получить только те данные, что он умеет возвращать. Все остальное закрыто.
Вы можете использовать дополнительные механизмы авторизации при обмене, но хранить любые шифрованные пароли на стороне клиента нет смысла
24. Umix 127 05.09.20 20:11 Сейчас в теме
(22) верно, когда удаленный пользователь - как клиент внутри своего англомирата / компании. А когда я хочу ограничивать длительность лицензии, то мне нужна проверка на моем сервере, поэтому нужна уникальность устройства, а подключение хочется не показывать, но и защитить свои данные, да и пользователи уже привыкли получать приветственный бесплатный период для тестов и работы.
26. WKBAPKA 226 05.09.20 20:14 Сейчас в теме
(24) тогда стоит смотреть в сторону аутентификации с помощью токенов
https://tyapk.ru/blog/post/authentication-methods
как вариант
28. Umix 127 05.09.20 20:16 Сейчас в теме
(26) Да думал я уже об этом, но не решает задачу уникальности идентификации устройства.
29. WKBAPKA 226 05.09.20 20:18 Сейчас в теме
(28) это реально проблема. В Android 10 получить уникальный ID телефона или IMEI уже нельзя.
Сам, для одного своего проекта, пытаюсь придумать, как идентифицировать устройства не требуя регистрации пользователя.
27. WKBAPKA 226 05.09.20 20:15 Сейчас в теме
(24) но даже простой обмен данными по SSL протоколу не даст возможности дешифровать данные, если не получить физический доступ к устройству.
17. WKBAPKA 226 05.09.20 19:52 Сейчас в теме
(15) можно работать с удаленным сервером с защитой доступа. Для этого достаточно обменяться с сервером необходимыми данными. Вплоть до того, что можно использовать методы, что используют банки для авторизации пользователя.
Вопрос только в желании и в финансах.
21. Umix 127 05.09.20 20:07 Сейчас в теме
К сожалению мы пока не банки)))
И про промежуточный сервер думал и алгоритм 2-го шифрования и ... забыл как его... когда сначала передается открытый ключ потом...

... все это лечится обычным хардресетом, или удалением/установкой. Нужно макс простота для пользователя с защитой для себя
23. WKBAPKA 226 05.09.20 20:11 Сейчас в теме
(21) самое надежное, это высылать одноразовый пароль на номер телефона... все остальное легко ломается... ну или пользователь должен при каждой сессии вводить свой пароль. Если у вас будет свой SSL сертификат, не думаю, что кто-то сможет дешифровать данные.
Другое дело, если пользователь кому-то даст свой пароль... но это уже другая история.
25. WKBAPKA 226 05.09.20 20:11 Сейчас в теме
(21) а хранить данные для идентификации, хоть и в шифрованном виде, бесполезно. Кому надо, тот найдет
30. pvlunegov 170 10.09.20 11:22 Сейчас в теме
Скачал ваш готовый проект под Android. Сборка проекта удалась сразу, все отлично.
Установил эмулятор Android Genymotion, установил на нем устройство с api 21 (в вашем проекте указан минимальный api 19), запустил проект на запущенном эмуляторе Android. Инсталляция на запущенный эмулятор из Android studio прошла успешно, при запуске приложения на устройстве (после инсталляции) возникает ошибка (см. приложенные файлы)
Retrofit Example has stopped
Прикрепленные файлы:
31. WKBAPKA 226 10.09.20 11:31 Сейчас в теме
(30) сложно сказать. Я проверял у себя - проект рабочий. Посмотрите в дебагере на чем падает. Возможно проблема в эмуляторе, не могу сказать, т.к. я эмулятор Android Genymotion не использовал в своей работе. В любом случае надо смотреть логи ошибок.
32. pvlunegov 170 10.09.20 12:04 Сейчас в теме
(31) Запускал дебаггер, ставил точки останова.
Точки останова не срабатывают.
Подскажите какой эмулятор вы используете?
34. WKBAPKA 226 10.09.20 12:41 Сейчас в теме
(32) стандартный, который идет вместе с Android Studio
посмотрите логи, в логах точно есть описание ошибки
33. pvlunegov 170 10.09.20 12:27 Сейчас в теме
Обнаружил проблему как с Genymotion эмулятора достучатся до localhost. На localhost у меня опубликован rest odata интерфейс к базе 1с. В браузере этот интерфейс прекрасно открывается и выдает xml. В Genymotion эмуляторе также удалось достучатся до страниц с odata интерфейсом и получить xml страницы в браузере на эмуляторе.
Я подставлял ip и адрес страниц на localhost в класс App, приложение не запускается.
Догадался, что приложение не читает интерфейс odata.
Попробую в 1с создать и опубликовать http-сервис и установить его адрес в классе App
О Результатах отпишусь.
35. WKBAPKA 226 10.09.20 12:41 Сейчас в теме
OData Retrfit не поддерживает, только REST
36. pvlunegov 170 10.09.20 13:29 Сейчас в теме
В пустой базе создал http-сервис, прописал все согласно статье https://infostart.ru/public/302876/
В браузере по адресу http-сервиса получил пустую страницу, так как возвращаю ответ в виде статуса 200. Так и должно быть. Ошибок нет, ответ от http-сервиса получен (в виде статуса 200).
Прописал адрес http-сервиса в браузере эмулятора Android, получил пустую страницу (так и нужно, ошибок нет, в 1с точка останова у http-сервиса срабатывает). Следовательно http-сервис в браузере эмулятора срабатывает без проблем.
В Android studio, Прописал в вашем приложении ip, адрес http-сервиса, указал имя пользователя и пароль для авторизации.
Собрал приложение, запустил на эмуляторе - не работает, при запуске пишет - к сожалению приложение остановлено (unfortunately, Retrofit Example has stopped).
В Android studio ставил точки останова, они не срабатывают.
Просьба помочь.
37. pvlunegov 170 10.09.20 13:35 Сейчас в теме
(36) Уточняю - при начале дебага (запуск приложения с отладкой в Android studio), в приложении возникает ошибка, но точка останова в MainActivity в OnCreate срабатывает.
38. pvlunegov 170 10.09.20 13:42 Сейчас в теме
(36) С помощью дебага выявил наконец то ошибку:
Unable to start activity ComponentInfo{ua.com.service.kubik.it.retrofitexample/ua.com.service.kubik.it.retrofitexample.MainActivity}: android.view.InflateException: Binary XML file line #9: Error inflating class Button
39. WKBAPKA 226 10.09.20 13:45 Сейчас в теме
(38) может все же попробуете эмулятор поменять?
Button стандартный компонент Android. Возможно вам имеет смысл переустановить
Android Studio
В последних версиях студии эмуляторы значительно быстрее работают, чем более ранние версии.
40. WKBAPKA 226 10.09.20 13:49 Сейчас в теме
Код на который ругается

<Button
android:id="*+id/idbutton"
android:layout_width="150dp"
android:layout_height="94dp"
android:background="*drawable/btn_circle"
android:text="*string/clickme"
android:textColor="*color/colorWhite"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
41. pvlunegov 170 10.09.20 14:10 Сейчас в теме
На английских форумах обнаружил и обезвредил источник проблемы.
Вот обсуждение бага - https://github.com/chrisjenx/Calligraphy/issues/417
Решение (помогло решить баг):
в проекте по пути \RetrofitExample\app\src\main\res\drawable-v24
есть файлы btn_circle.xml и ic_launcher_foreground.xml
создал новую папку \RetrofitExample\app\src\main\res\drawable
перенес эти 2 файла в эту папку.
Проблема решена, приложение корректно запускается и работает на Эмуляторе!

Как я понял из обсуждения бага, на различных версиях устройств Android может быть различные разрешения экрана. Если у вас изображения (вашей кнопки) в папке drawable-v24 значит они будут поддерживаться только определенными разрешениями экранов устройств (соотношение сторон v24). Чтобы на других устройствах такой ошибки не было, нужно изображения кидать в папку drawable тогда эти изображения будут поддерживаться всеми устройствами с любым соотношением сторон экрана.

Знайте мат часть!
44. WKBAPKA 226 10.09.20 14:16 Сейчас в теме
(41) честно говоря, сталкиваюсь с этим впервые. Реализовал ряд коммерческих проектов, в которых использую графические ресурсы и под разрешение экрана не заморачивался. Работает на любом эмуляторе, на любом устройстве с разными разрешениями. Да и ресурсы созданы автоматически при создании проекта.
Думаю, что это проблема эмулятора.
46. WKBAPKA 226 10.09.20 14:19 Сейчас в теме
(41)
может быть из за этого

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape android:shape="oval">
<stroke
android:color="*color/colorPrimary"
android:width="5dp" />
<solid
android:color="*color/colorAccent"/>
<size
android:width="*dimen/fab_margin"
android:height="*dimen/fab_margin"/>
</shape>
</item>

</selector>

в Андроид много разных приколов, я уже ничему не удивляюсь )
47. WKBAPKA 226 10.09.20 14:31 Сейчас в теме
(41)
Возможно из за кода, для создания овальной кнопки
А так все ресурсы стандартные, сгенерированы автоматически. Но я не удивляюсь, в Андроид много разных приколов.
42. WKBAPKA 226 10.09.20 14:10 Сейчас в теме
попробуйте переделать разметку, вместо ConstraintLayout используйте LinearLayout, и замените ссылку на разметку в MainActivity
43. pvlunegov 170 10.09.20 14:13 Сейчас в теме
Огромное спасибо за ваш проект, мне это помогло решить мою давнюю потребность в интеграции Android приложения с 1с.
Все замечательно работает, я бесконечно вам благодарен!

Я перепробовал много статей, пробовал различные варианты интеграции, ни один не работал, коды устаревали, куча ошибок, старые версии библиотек и т.п.
Ваш проект отлично работает и полностью удовлетворяет моим запросам.
Надееюсь на дальнейшее сотрудничество.

Вскоре намерен развить ваш подход в своих проектах.
Как только получится что-нибудь интересное, опубликую.

Приглашаю вас к обмену информацией в переписке.
Успехов вам!
45. WKBAPKA 226 10.09.20 14:17 Сейчас в теме
(43) рад буду обмениваться информацией
Оставьте свое сообщение

См. также

Внешняя компонента: Android tools Промо

Мобильная разработка Разработка внешних компонент v8 v8::Mobile Абонемент ($m)

Несколько дополнительных функций для мобильного приложения\клиента под Android. Размер архива внешних компонент под архитектуры ARM и x86 - 230KB.

1 стартмани

12.01.2021    3725    14    KAV2    8    

Распознавание речи в мобильном приложении 1С на Android

Мобильная разработка Разработка внешних компонент v8::Mobile Абонемент ($m)

Внешняя компонента для мобильной платформы 1С, работающая в связке с отдельной службой и позволяющая реализовать распознавание речи в мобильном приложении на Android.

1 стартмани

15.07.2021    2338    3    salexdv    6    

Дневник времени. Простое мобильное приложение 1С для телефона на Андроид

Мобильная разработка v8::Mobile Абонемент ($m)

Дневник времени. Для адептов тайм-менеджмента и всех тех, кто ценит свое время. Предназначен для ежедневных записей в телефоне расхода времени на различные задачи. Отчет по записям программы позволяет увидеть, сколько времени, на какие задачи расходовалось и проанализировать траты времени за месяц. Можно выгрузить записи в csv файл и анализировать на дескопном компьютере, например в Экселе.

1 стартмани

12.03.2021    1582    4    pricec    0    

Мобильное приложение для 1C:Drive для фотоотчетов с сохранением фотографий в Microsoft Azure Blob storage

Мобильная разработка v8::Mobile Абонемент ($m)

Пример реализации мобильного приложения, которое использует Microsoft Azure Blob storage для сохранения фотографий и передает сведения о сделанных фотографиях в 1C:Drive.

1 стартмани

26.02.2021    2107    3    keypax    2    

Конструктор мобильного клиента Simple WMS Client: способ создать полноценный ТСД без мобильной разработки. Теперь новая версия - Simple UI (обновлено 14.11.2019) Промо

Инструментарий разработчика Сканер штрих-кода Терминал сбора данных Мобильная разработка Оптовая торговля Производство готовой продукции (работ, услуг) Розничная торговля Учет ОС и НМА Учет ТМЦ Оптовая торговля Производство готовой продукции (работ, услуг) Розничная торговля Учет ОС и НМА Учет ТМЦ v8 v8::Mobile БУ УУ Абонемент ($m)

Simple WMS Client – это визуальный конструктор мобильного клиента для терминала сбора данных(ТСД) или обычного телефона на Android. Приложение работает в онлайн режиме через интернет или WI-FI, постоянно общаясь с базой посредством http-запросов (вариант для 1С-клиента общается с 1С напрямую как обычный клиент). Можно создавать любые конфигурации мобильного клиента с помощью конструктора и обработчиков на языке 1С (НЕ мобильная платформа). Вся логика приложения и интеграции содержится в обработчиках на стороне 1С. Это очень простой способ создать и развернуть клиентскую часть для WMS системы или для любой другой конфигурации 1С (УТ, УПП, ERP, самописной) с минимумом программирования. Например, можно добавить в учетную систему адресное хранение, учет оборудования и любые другие задачи. Приложение умеет работать не только со штрих-кодами, но и с распознаванием голоса от Google. Это бесплатная и открытая система, не требующая обучения, с возможностью быстро получить результат.

5 стартмани

09.01.2019    57703    262    informa1555    234    

Авторизация в мобильном приложении 1С

Роли и права Мобильная разработка v8 v8::Mobile 1cv8.cf Абонемент ($m)

Реализация входа по паролю (личному коду) в мобильном приложении 1С.

10 стартмани

23.02.2021    3496    6    kaiman_fedor_yandex    0    

Выбор документов на мобильном устройстве (iOS)

Мобильная разработка v8::Mobile Абонемент ($m)

При внедрении мобильного приложения, имеющего в своём функционале работу с файлами, возникла необходимость прикреплять к документам не только фотографии из библиотеки мультимедиа или тут же созданные фотографии, а документы (pdf, doc, xlsx, и др.). В операционной системе iOS файловая система скрыта для пользователя и взаимодействие с файлами осуществляется средствами самого приложения и только с файлами, расположенными в директории приложения (контейнере приложения). Т.е. задачей было поместить файлы в директорию приложения и организовать взимодествие с этим каталогом.

1 стартмани

29.11.2020    2543    0    OlegK    0    

Беспроводные метки NFC Промо

Мобильная разработка NFC, RFID v8::Mobile Абонемент ($m)

Технический прогресс не стоит на месте, появляющиеся новые технологии со временем дешевеют и становятся доступны практически всем желающим. Как пример можно привести мобильные телефоны. Середина 80-ых - начало 90-ых были переносные таксофоны с ручками или кирпичи стоимостью несколько тысяч $, конец 90-ых - большого размера трубки, с торчащими антеннами со стоимостью от 100$ Такую же аналогию можно провести с NFC метками, используемыми в учетных целях.

1 стартмани

16.05.2017    24649    64    PloAl    18    

Программа расчёта питательной ценности ежедневной диеты по тридцати восьми нутриентам (мобильное приложение 1С для Андроид), APK + исходная конфигурация

Мобильная разработка v8::Mobile Домашние учет и финансы Абонемент ($m)

Мобильное приложение на платформе 1С с исходной конфигурацией. Пример решения задач по интерфейсу и первичному заполнению базы.

5 стартмани

12.10.2020    2811    1    ovasiliev    4    

Использование встроенного сканера ТСД на Android в мобильном клиенте и мобильном приложении (драйвер сканера Android для 1С)

Разработка внешних компонент Мобильная разработка v8 Абонемент ($m)

Используя данный драйвер, можно без единой строки кода, просто установив на ТСД мобильный клиент 1С, сразу начать подбирать товары в документах вашей учётной системы. А, адаптировав нужные формы под небольшой размер экрана ТСД, можно просто создать полноценное рабочее место для выполнения операций с помощью ТСД, не прибегая к стороннему софту. Если же на складе плохая связь (или её нет вовсе), то можно использовать возможности мобильного клиента в автономном режиме (потребуется доработка вашей конфигурации). Драйвер также можно использовать и для Android приложения на мобильной платформе. В результате чего можно обойтись без ненужных полей ввода и клавиатуры «на пол-экрана».

3 стартмани

09.10.2020    16479    142    ltfriend    125    

1C.QuickPhoto - мобильное приложение для быстрой отправки фотографий в присоединенные файлы БСП

Мобильная разработка Обработка справочников Адаптация типовых решений v8 УНФ ERP2 УТ11 КА2 Абонемент ($m)

Приложение предназначено для быстрого прекрепления фотографий к документам и справочникам программ 1С. Требуется установить расширение для своей конфигурации и опубликовать http-сервис.

2 стартмани

17.09.2020    3981    6    suepifanov    27    

Приложение Android для идентификации/распознавания образов (с обучением с одного раза, One-Shot Learning) с возможностью работы с 1С через веб-сервис Промо

Мобильная разработка v8 Абонемент ($m)

В данной статье описано приложение, алгоритм и методика распознавания изображений, предоставляющее посредством http-запросов информацию о распознанных объектах в 1С. В качестве примера интеграции прилагается конфигурация, реализующая веб-сервис для приема запросов от приложения.

1 стартмани

19.06.2018    18397    4    informa1555    16    

Мобильная платформа. Штрихкоды в Android.

Разработка внешних компонент Мобильная разработка Сканер штрих-кода v8::Mobile Абонемент ($m)

Пример конфигурации, содержащей внешнюю компоненту для мобильной платформы, выводящую изображение штрихкода в интерфейсе мобильного приложения.

3 стартмани

14.09.2020    3673    4    kinan    19    

Инструменты отладки Web-страниц в приложении на устройстве Android

Мобильная разработка WEB Инструментарий разработчика Разработка внешних компонент v8::Mobile Абонемент ($m)

При разработке сложных интерфейсов на базе HTML часто возникает необходимость отладки стилей CSS и скриптов непосредственно на устройстве. Статья описывает способ отладки web-содержимого приложения мобильной платформы 1С на Андроид устройстве с помощью Chrome Development Tools.

7 стартмани

26.08.2020    4770    2    ingeneerz@gmail.com    2    

Мусорная корзина, или удаление помеченных объектов для мобильной платформы

Мобильная разработка Чистка базы v8 v8::Mobile 1cv8.cf Абонемент ($m)

Обработка удаления помеченных объектов для встраивания в Ваши мобильные приложения.

2 стартмани

18.08.2020    3188    3    GAMLET    0    

Мобильное приложение "Отчет по проделанной работе" Промо

Мобильная разработка Учет рабочего времени Учет рабочего времени v8 Россия УУ Абонемент ($m)

Приложение выполняет фиксацию рабочего времени у клиентов, а также заявок на работы, пригодится как шаблон для разработки своего или как готовое решение для работников в сфере услуг, которые фиксируют время у клиентов. В приложении 2 документа: первый "отчет за день", второй "заявка" и полезный инструмент "Отчет задачи", который в свою очередь создан для просмотра, анализа и закрытия заявок. Тестировал на Iphone 6s.

10 стартмани

01.12.2017    26922    10    olejnikov_m    6    

Расширение "PUSH уведомления для мобильного клиента".

Мобильная разработка v8::Mobile КА1 ERP2 УТ11 1С:CRM Россия Абонемент ($m)

Расширение для отправки PUSH уведомлений в мобильный клиент на Android. Подходит для типовых конфигураций, протестирована на конфигурации КА 2.4.

1 стартмани

04.08.2020    4787    9    romanpolyashov@yandex.ru    0    

Нано HTTP сервер - внешняя компонента для мобильного приложения 1C, на Android

Разработка внешних компонент Мобильная разработка v8 v8::Mobile 1cv8.cf Абонемент ($m)

Нано HTTP сервер на терминале сбора данных "ATOL Smart.Lite android 7.0". Работает только с GET и POST запросами. Аутентификация BASE64. Не поддерживает HTTPS и не передает файлы. В прикрепленном архиве исходники на компоненту (С++ и java для Android Studio 3.6.2), ЦФ - мобильного приложения и тестовая обработка.

1 стартмани

22.06.2020    5518    11    SanyMaga    19    

miniWms. Программное решение для автоматизации склада

Мобильная разработка Учет ТМЦ v8 УТ11 Оптовая торговля, дистрибуция, логистика УУ Абонемент ($m)

Готовое Android приложение для автоматизации складских операций УТ 11. Доработка конфигурации не требуется. Навыки разработчика не требуются.

1 стартмани

16.06.2020    3748    5    Basili02    6    

Telemonitor - объединяем Telegram и 1С Промо

Сервисные утилиты Администрирование данных 1С Мобильная разработка v8 1cv8.cf Абонемент ($m)

Не так давно Telegram предоставил API для создания ботов. Telemonitor - программа, позволяющая легко настроить собственного бота для работы с 1С.

1 стартмани

09.08.2015    82271    230    salexdv    186    

Простое мобильное приложение, информирующее об остатках на складах и ценах по штрихкоду, для 1С: УНФ, Розница, УТ 11

Розничная торговля Учет ТМЦ Ценообразование, анализ цен Торговое оборудование Управленческий учет (прочее) Мобильная разработка v8::ОУ v8::Mobile Розница УТ11 УУ Абонемент ($m)

Для различных торговых предприятий(магазинов, супермаркетов, торговых баз и т.п.) крайне необходимо персоналу, быстро уточнять наличие на складе или цену продаваемой номенклатуры. Что может быть проще взять свой смартфон навести камеру, и все выяснить. Но не тут то было, в стандартном функционале 1С Розницы, УНФ, Торговли и т.п., ничего для быстрой обработки штрихкодов нет. На инфостарте ничего нужного, я также не нашел. В итоге пришлось разработать данное решение.

2 стартмани

03.06.2020    7185    21    Romyl01    23    

Перехват сканирования Android Native API

Разработка внешних компонент Мобильная разработка v8::Mobile Абонемент ($m)

Native компонента для перехвата сканирования шк и передачу в мобильную 1С.

1 стартмани

29.04.2020    9015    60    evgeny43    54    

Мобильная платформа. Уникальный идентификатор устройства Android при помощи внешней компоненты. Не IMEI

Разработка внешних компонент Мобильная разработка v8::Mobile Абонемент ($m)

Идентифицируем устройства, на которых установлены копии нашего приложения.

3 стартмани

23.04.2020    5975    5    kinan    15    

7 причин, почему интеграция стала приятной. Не упускайте ряд потрясающих возможностей Промо

Внешние источники данных Интеграция Мобильная разработка v8 1cv8.cf Абонемент ($m)

В статье показаны примеры получения данных без программирования на стороне «1С:Предприятие 8». Вам нужно проверить гипотезу и проанализировать данные, почему бы не интегрироваться с Excel? Используете технологии .NET и «1С:Предприятие 8», процесс связывания систем движется катастрофически медленно? Хотите native Android приложение с вашими данными всегда под рукой?

1 стартмани

01.10.2015    60912    48    pbazeliuk    23    

Android Java и NativAPI C++ внешняя компонента для широковещательных сообщений (отправка и прием). Подключаем сканер ШК и клавиатуру к "1С мобильное приложение"

Оптовая торговля Розничная торговля Сканер штрих-кода Разработка внешних компонент Мобильная разработка v8::Mobile Оптовая торговля, дистрибуция, логистика Абонемент ($m)

Подключаем сканер ШК и клавиатуру к "1С мобильное приложение", на терминале сбора данных "ATOL Smart.Lite android 7.0". Работаем с буфером обмена. В архиве к теме; 1. исходник компоненты (папка package готовый zip); 2. исходник "AccessibilityService" для перехвата клавиатуры (папка package готовый apk); 3. cf - тестовая конфигурация

1 стартмани

15.04.2020    8073    62    SanyMaga    88    

Мобильная платформа. Реакция на внешнее событие в Android при помощи внешней компоненты

Мобильная разработка Разработка внешних компонент v8::Mobile Молдова Абонемент ($m)

Внешняя компонента для мобильной платформы на Android. Пришиваем платформе уши, чтобы лучше слышать.

3 стартмани

06.04.2020    7206    12    kinan    20    

Готовые решения для инвентаризации товаров и основных средств на мобильных устройствах для КА, УТ, ERP и БП 3.0 на базе Simple UI

Оптовая торговля Розничная торговля Учет ОС и НМА Мобильная разработка Учет ТМЦ v8 ERP2 БП3.0 УТ11 КА2 БУ УУ Абонемент ($m)

В расширениях для Бухгалтерия 3.0 и КА2.4/УТ11.4/ERP2.4 представлены готовые рабочие места для онлайн и оффлайн инвентаризации товаров (для БП 3.0 также инвентаризации основных средств) на базе бесплатного конструктора мобильного фронта Simple UI. При этом используется расширенная работа с идентификацией товаров и ОС с помощью различных подходов – сканирование штрих кода, распознавание артикулов и инвентарных номеров и различные поиски. Также используются различные возможности платформы Simple UI. Данная разработка может быть полезна как конечным пользователям, так и разработчикам в качестве заготовки, так как на базе этих блоков можно сделать ввод любого документа конфигурации , связанного с товаром или с ОС. Тестировалось на 1С 8.3.13.1865, КА 2.4.8.63 и БП 3.0.74.69

5 стартмани

28.02.2020    12270    65    informa1555    70    

Давайте подружим 1С и Android. Часть 1 - постановка задачи и подход к решению Промо

Мобильная разработка v8 Абонемент ($m)

Серия уроков по созданию простейшего приложения на платформе Android для взаимодействия с 1С.

1 стартмани

29.02.2016    34145    42    solarisman    32    

Обработка голосового ввода текста с использованием (intent)

Мобильная разработка v8::Mobile 1cv8.cf Абонемент ($m)

Обработка для голосового ввода текста с использованием дополнительных возможностей ОС Android.

1 стартмани

26.02.2020    4801    3    algabas    7    

Наш путь к эффективной инвентаризации склада

Учет ТМЦ Учет ТМЦ Розничная торговля Мобильная разработка v8 УУ Абонемент ($m)

В работе любой торговой организации всегда остро стоит вопрос контроля остатков на складе. И здесь не обойтись без проведения инвентаризации товаров. В этой публикации рассмотрим наш путь и выбранное решение ее проведения.

8 стартмани

12.01.2020    6554    1    Johny_v    22    

Обмен данными с Android через USB

Практика программирования Мобильная разработка v8 v8::УФ 1cv8.cf Абонемент ($m)

Обработка с примером обмена данными конфигурации 1С через USB. Без установки Web сервера и настройки WiFi.

1 стартмани

23.12.2019    6121    4    asdfgcom    2    

Как сделать простое мобильное веб-приложение в 1С Промо

Практика программирования Мобильная разработка v8 1cv8.cf Абонемент ($m)

В статье показан пример разработки простого мобильного веб-приложения "Контакты" с помощью функционала HTTP-сервисов появившегося в новой версии платформы 1С (8.3.5). Данное демонстрационное мобильное веб-приложение предоставляет доступ к телефонам и электронной почте контрагентов хранящихся в базе 1С, позволяет совершать звонки и писать электронные письма.

1 стартмани

04.06.2014    58726    216    rtnm    24    

Simple UI: простой конструктор мобильных приложений для устройств на Android. Обновление от 24.07.2021 - распознавание лиц

Мобильная разработка v8 УУ Абонемент ($m)

Simple UI – это полностью бесплатная платформа для создания мобильных рабочих мест на Android. Конструктор позволяет создавать мобильные клиенты для учетных систем и самостоятельные приложения на телефонах, ТСД (терминалах сбора данных), планшетах, электронных киосках и других устройствах. При этом не нужно разбираться в мобильной разработке, Android SDK ведь основная цель платформы – максимально упростить процесс разработки и поддержки, сделать его визуальным, собирать приложения из готовых блоков с минимумом кода. Причем код обработчиков можно писать на языке учетной системы либо задавать логику обработки событий с помощью команд REST, SQL и визуального конструктора. Проект постоянно развивается изыскивая новые способы упрощения разработки и повышения функционала и является пожалуй самым быстрым способом как создать MVP-проект так и продакшн-систему под конкретное внедрение или тиражный продукт.Тестировалось на 1С: Предприятие 8.3 релиз 8.3.13.1865.

1 стартмани

14.11.2019    27734    297    informa1555    175    

Получение AndroidID в мобильном приложении

Мобильная разработка v8::Mobile Россия Абонемент ($m)

Получаем Android DeviceID в мобильном приложении/клиенте, используя стороннее приложение.

1 стартмани

05.11.2019    10507    7    sam441    11    

Мобильное приложение для Android для отправки СМС из 1C

SMS рассылки Мобильная разработка v8 1cv8.cf Абонемент ($m)

Вашему вниманию предлагается мобильное приложение (конфигурация .cf) + HTTP сервис для отправки СМС из 1С8

2 стартмани

04.11.2019    9236    12    dimasikus31    2    

Создание и управление интернет магазином на Android в режиме "Online" Промо

Мобильная разработка v8 1cv8.cf Абонемент ($m)

“DjanorgStore-Client” – обработка для управления в режиме "onLine" контентом приложения интернет магазина на Android платформах

1 стартмани

08.10.2012    25915    228    Kosigo    22    

Мобильная платформа. Косяки работы с интерфейсом

Мобильная разработка Работа с интерфейсом v8 1cv8.cf Абонемент ($m)

Думаю, каждый, кто хоть немного акцентировался на работе интерфейса на мобилке, сталкивался с проблемами с управлением элементами формы. О них и предлагаю поговорить.

1 стартмани

24.10.2019    7036    1    Crazy_Max    2    

ODa - Android приложение для подключения к любой конфигурации 1С, используя OData протокол

Мобильная разработка v8 1cv8.cf Абонемент ($m)

В платформе 1С реализована прекрасная возможность работы с открытым веб-протоколом OData, который предоставляет любой другой платформе интерфейс доступа - возможность запрашивать и обновлять данные из базы 1С. Далее в статье будут описаны особенности работы мобильного приложения ODa, которое без программировании на стороне Android'a позволит разработчикам публиковать базы 1С, что даст возможность обычным пользователям взаимодействовать с объектами метаданных, используя нативные элементы интерфейса платформы Android.

1 стартмани

22.10.2019    12825    8    Kosigo    11    

Компонента аутентификации и шифрования с помощью биометрической информации для Андроид

Разработка внешних компонент Мобильная разработка Защита и шифрование v8::Mobile Абонемент ($m)

Компонента для мобильной платформы, позволяющая идентифицировать пользователя и шифровать данные с помощью биометрических сканеров.

5 стартмани

17.09.2019    8358    1    IgorKissil    9    

Мобильное приложение 1С для просмотра контактов в базе Промо

Мобильная разработка v8 БП2.0 УТ10 УНФ Абонемент ($m)

Партнеры: нативное приложение для просмотра контактов из вашей базы 1С на iPhone c iOS trendy интерфейсом

1 стартмани

29.08.2014    29793    9    playertwo    8    

ERP 2.4 "Рабочее место работника склада" на ТСД + Android 7

Терминал сбора данных Рабочее место Мобильная разработка Учет ТМЦ Учет ТМЦ v8 ERP2 УУ Абонемент ($m)

Решение задачи использования терминала сбора данных в режиме онлайн при помощи типовой обработки ERP 2.4 "Рабочее место работника склада", запуском ERP на мобильном клиенте 1С. Для настройки использовался ТСД Urovo V5100 на ОС Андроид 7.

1 стартмани

07.08.2019    17947    26    chemezov    10    

Инвентаризация на мобильном устройстве. УТ 10

Мобильная разработка Учет ТМЦ Учет ТМЦ v8 УТ10 УУ Абонемент ($m)

Мобильное приложение и обработка выгрузки для инвентаризации в УТ 10.

2 стартмани

22.06.2019    6816    17    olejnikov_m    0    

[Расширение] для подключения мобильного устройства к УТ11.4/ КА 2/ERP 2 для работы с ордерным складом на базе Simple WMS. UPD Устарело (см. Simple UI)

Сканер штрих-кода Терминал сбора данных Мобильная разработка Управление торговлей Оптовая торговля Розничная торговля Учет ТМЦ Оптовая торговля Розничная торговля Учет ТМЦ v8 ERP2 УТ11 КА2 УУ Абонемент ($m)

Представляю готовое решение для работы с ордерами и проведения инвентаризаций в виде расширения на базе конструктора Simple WMS. Не требует доработки конфигурации, подключается как обычное расширение. Работать может с обычного телефона на Андроид либо с ТСД либо через RDP. Расширение содержит справочники, поэтому режим совместимости конфигурации должен быть не меньше 8.3.11. Расширение написано для конфигурации Управление торговлей 11.4.7 и тестировалось на Комплексная автоматизация 2.4.7.151.

5 стартмани

27.05.2019    17787    42    informa1555    39    

Оффлайн телефонный справочник для IOS и Android

Мобильная разработка v8 1cv8.cf Россия Абонемент ($m)

Как сделать телефонный справочник компании на мобильном телефоне для IOS, если у тебя android, бюджет в 100 долларов, несколько стартмани, а ты мастер программирования только в 1С? + БОНУС, как в компании бесплатно использовать телефонный справочник IOS и Android.

1 стартмани

20.05.2019    10157    7    rujiy_kot    2    

Шаблон http-сервиса для вашего проекта

Внешние источники данных WEB Мобильная разработка v8 v8::Mobile 1cv8.cf Абонемент ($m)

Http-сервис для обмена данными в формате JSON. Обработчики этого сервиса находятся во внешней обработке, что позволяет дорабатывать его без изменения конфигурации. Также прилагаю пример мобильного приложения для работы с данным сервисом (получает номенклатуру и остатки на складе). Сервис очень быстро разворачивается и масштабируется под ваши задачи.

3 стартмани

04.05.2019    24305    88    MarkoSokolov    48    

Управление ТСД Zebra с помощью внешней компоненты для мобильной платформы

Разработка внешних компонент Мобильная разработка v8::Mobile Абонемент ($m)

Представлена внешняя компонента для управления сканерами терминалов Zebra из мобильных приложений 1С.

2 стартмани

15.04.2019    13598    46    IgorKissil    48    

Андроид активити, разработанное для запуска и сбора информации из мобильного приложения 1С 8.3

Мобильная разработка v8::Mobile 1cv8.cf Автомобили, автосервисы Абонемент ($m)

Активити доступно из кода мобильного приложения 1С 8.3. Может использоваться как часть приложения при приемке автомобиля на предприятиях автосервиса. По сути является модальным диалогом, для внесения данных по осмотру автомобиля при приемке/передаче.

1 стартмани

10.04.2019    7393    3    hiEnergy    1    

Подкасты сайта "Эхо Москвы" в мобильном приложении 1С

Мобильная разработка v8::Mobile Россия Абонемент ($m)

Данная разработка показывает возможности мобильного приложения от 1С на примере получения данных с сайта радиостанции "Эхо Москвы" и последующего проигрывания мультимедиа.

1 стартмани

09.03.2019    7229    2    NovPas    6    

Подписи для 1С

Мобильная разработка Документооборот и делопроизводство Документооборот и делопроизводство v8 Россия Абонемент ($m)

Получение подписей в Мобильной платформе 1С с помощью приложения.

1 стартмани

28.02.2019    10012    8    Grivba    7