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

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

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

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
02.11.19
5
.7z 1.1 7,94Mb 5 Скачать

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

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. dusha0020 936 04.11.19 13:03 Сейчас в теме
Может стоит "данные в формате Gson" заменить по тексту на json?
Gson это библиотека Андроида для работы с json, а не формат данных.
2. WKBAPKA 222 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 222 12.05.20 15:23 Сейчас в теме
(3) насколько я помню OKHTTP3 включен в состав библиотеки. Можно почитать у них на сайте.
А что касается защищенного соединения, то в манифесте ничего прописывать не надо. Нужно только получить разрешение на работу с Internet.
5. WKBAPKA 222 12.05.20 15:24 Сейчас в теме
(3) я в нескольких проектах выполняю запросы по защищенному соединению и ничего дополнительно не настраивал.
6. FEAS88 8 12.05.20 16:12 Сейчас в теме
(5) Если Https то ничего не надо согласен.

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

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

... все это лечится обычным хардресетом, или удалением/установкой. Нужно макс простота для пользователя с защитой для себя
23. WKBAPKA 222 05.09.20 20:11 Сейчас в теме
(21) самое надежное, это высылать одноразовый пароль на номер телефона... все остальное легко ломается... ну или пользователь должен при каждой сессии вводить свой пароль. Если у вас будет свой SSL сертификат, не думаю, что кто-то сможет дешифровать данные.
Другое дело, если пользователь кому-то даст свой пароль... но это уже другая история.
25. WKBAPKA 222 05.09.20 20:11 Сейчас в теме
(21) а хранить данные для идентификации, хоть и в шифрованном виде, бесполезно. Кому надо, тот найдет
30. pvlunegov 163 10.09.20 11:22 Сейчас в теме
Скачал ваш готовый проект под Android. Сборка проекта удалась сразу, все отлично.
Установил эмулятор Android Genymotion, установил на нем устройство с api 21 (в вашем проекте указан минимальный api 19), запустил проект на запущенном эмуляторе Android. Инсталляция на запущенный эмулятор из Android studio прошла успешно, при запуске приложения на устройстве (после инсталляции) возникает ошибка (см. приложенные файлы)
Retrofit Example has stopped
Прикрепленные файлы:
31. WKBAPKA 222 10.09.20 11:31 Сейчас в теме
(30) сложно сказать. Я проверял у себя - проект рабочий. Посмотрите в дебагере на чем падает. Возможно проблема в эмуляторе, не могу сказать, т.к. я эмулятор Android Genymotion не использовал в своей работе. В любом случае надо смотреть логи ошибок.
32. pvlunegov 163 10.09.20 12:04 Сейчас в теме
(31) Запускал дебаггер, ставил точки останова.
Точки останова не срабатывают.
Подскажите какой эмулятор вы используете?
34. WKBAPKA 222 10.09.20 12:41 Сейчас в теме
(32) стандартный, который идет вместе с Android Studio
посмотрите логи, в логах точно есть описание ошибки
33. pvlunegov 163 10.09.20 12:27 Сейчас в теме
Обнаружил проблему как с Genymotion эмулятора достучатся до localhost. На localhost у меня опубликован rest odata интерфейс к базе 1с. В браузере этот интерфейс прекрасно открывается и выдает xml. В Genymotion эмуляторе также удалось достучатся до страниц с odata интерфейсом и получить xml страницы в браузере на эмуляторе.
Я подставлял ip и адрес страниц на localhost в класс App, приложение не запускается.
Догадался, что приложение не читает интерфейс odata.
Попробую в 1с создать и опубликовать http-сервис и установить его адрес в классе App
О Результатах отпишусь.
35. WKBAPKA 222 10.09.20 12:41 Сейчас в теме
OData Retrfit не поддерживает, только REST
36. pvlunegov 163 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 163 10.09.20 13:35 Сейчас в теме
(36) Уточняю - при начале дебага (запуск приложения с отладкой в Android studio), в приложении возникает ошибка, но точка останова в MainActivity в OnCreate срабатывает.
38. pvlunegov 163 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 222 10.09.20 13:45 Сейчас в теме
(38) может все же попробуете эмулятор поменять?
Button стандартный компонент Android. Возможно вам имеет смысл переустановить
Android Studio
В последних версиях студии эмуляторы значительно быстрее работают, чем более ранние версии.
40. WKBAPKA 222 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 163 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 222 10.09.20 14:16 Сейчас в теме
(41) честно говоря, сталкиваюсь с этим впервые. Реализовал ряд коммерческих проектов, в которых использую графические ресурсы и под разрешение экрана не заморачивался. Работает на любом эмуляторе, на любом устройстве с разными разрешениями. Да и ресурсы созданы автоматически при создании проекта.
Думаю, что это проблема эмулятора.
46. WKBAPKA 222 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 222 10.09.20 14:31 Сейчас в теме
(41)
Возможно из за кода, для создания овальной кнопки
А так все ресурсы стандартные, сгенерированы автоматически. Но я не удивляюсь, в Андроид много разных приколов.
42. WKBAPKA 222 10.09.20 14:10 Сейчас в теме
попробуйте переделать разметку, вместо ConstraintLayout используйте LinearLayout, и замените ссылку на разметку в MainActivity
43. pvlunegov 163 10.09.20 14:13 Сейчас в теме
Огромное спасибо за ваш проект, мне это помогло решить мою давнюю потребность в интеграции Android приложения с 1с.
Все замечательно работает, я бесконечно вам благодарен!

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

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

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

См. также

Конструктор мобильного клиента 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    45602    253    informa1555    232    

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

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

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

5 стартмани

12.10.2020    852    0    ovasiliev    3    

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

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

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

3 стартмани

09.10.2020    3569    28    ltfriend    40    

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

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

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

3 стартмани

14.09.2020    1340    1    kinan    13    

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

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

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

1 стартмани

16.05.2017    22003    57    PloAl    18    

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

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

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

7 стартмани

26.08.2020    1604    2    ingeneerz@gmail.com    2    

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

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

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

2 стартмани

18.08.2020    1283    2    GAMLET    0    

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

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

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

1 стартмани

04.08.2020    1680    4    romanpolyashov@yandex.ru    0    

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

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

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

1 стартмани

19.06.2018    15586    4    informa1555    15    

Нано 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    2738    7    SanyMaga    19    

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

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

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

1 стартмани

16.06.2020    1971    2    Basili02    5    

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

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

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

2 стартмани

03.06.2020    2886    12    Romyl01    21    

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

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

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

10 стартмани

01.12.2017    22855    10    olejnikov_m    6    

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

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

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

1 стартмани

29.04.2020    4873    34    evgeny43    40    

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

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

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

3 стартмани

23.04.2020    3288    3    kinan    15    

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    4087    38    SanyMaga    84    

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

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

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

1 стартмани

09.08.2015    78161    210    salexdv    178    

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

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

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

3 стартмани

06.04.2020    4240    7    kinan    17    

[Расширение] Готовые решения для инвентаризации товаров и основных средств на мобильных устройствах для КА, УТ, 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. Используются только бесплатные возможности Simple UI (не Pro-версия), т.е. решение бесплатное. Данная разработка может быть полезна как конечным пользователям, так и разработчикам в качестве заготовки, так как на базе этих блоков можно сделать ввод любого документа конфигурации , связанного с товаром или с ОС. Тестировалось на 1С 8.3.13.1865, КА 2.4.8.63 и БП 3.0.74.69

5 стартмани

28.02.2020    5230    29    informa1555    7    

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

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

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

1 стартмани

26.02.2020    3033    2    algabas    7    

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

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

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

1 стартмани

01.10.2015    57245    46    pbazeliuk    23    

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

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

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

8 стартмани

12.01.2020    4402    1    Johny_v    21    

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

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

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

1 стартмани

23.12.2019    4195    4    asdfgcom    2    

Simple UI: простой конструктор мобильных приложений для устройств на Android. Самый быстрый способ создания рабочего места на смартфоне или ТСД. Обновление от 07.11.2020: ноябрьский и ранее сентябрьский пакеты

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

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

1 стартмани

14.11.2019    16268    160    informa1555    100    

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

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

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

1 стартмани

29.02.2016    31571    42    solarisman    32    

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

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

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

1 стартмани

05.11.2019    7952    4    sam441    11    

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

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

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

2 стартмани

04.11.2019    7190    4    dimasikus31    2    

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

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

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

1 стартмани

24.10.2019    5129    0    Crazy_Max    2    

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

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

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

1 стартмани

04.06.2014    56414    79    rtnm    24    

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

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

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

1 стартмани

22.10.2019    10038    8    Kosigo    11    

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

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

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

5 стартмани

17.09.2019    6173    1    IgorKissil    9    

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

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

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

1 стартмани

07.08.2019    12465    15    chemezov    8    

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

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

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

1 стартмани

08.10.2012    24169    6    Kosigo    22    

Мобильное приложение 1С для помарочной инвентаризации маркируемой (алкогольной) продукции

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

Мобильное приложение 1С для помарочной инвентаризации маркируемой (алкогольной) продукции на ТСД под Android. Получение данных марок (штрихкодов), используя БПО для мобильного приложения. Разработка на платформе 8.3.13.1809. Мобильная платформа 8.3.13.64. Версия сборщика 2.0.8.19.

1 стартмани

18.07.2019    7821    21    savostin.alex    5    

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

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

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

2 стартмани

22.06.2019    5406    13    olejnikov_m    0    

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

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

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

5 стартмани

27.05.2019    13064    34    informa1555    27    

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

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

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

1 стартмани

29.08.2014    27946    1    playertwo    8    

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

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

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

1 стартмани

20.05.2019    7899    6    rujiy_kot    2    

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

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

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

3 стартмани

04.05.2019    19806    76    MarkoSokolov    47    

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

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

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

2 стартмани

15.04.2019    9576    30    IgorKissil    17    

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

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

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

1 стартмани

10.04.2019    5703    1    hiEnergy    1    

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

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

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

1 стартмани

09.03.2019    5568    2    NovPas    6    

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

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

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

1 стартмани

28.02.2019    7768    5    Grivba    7    

Альтернатива для "ПоказатьВыборИзСписка" и "ПоказатьВопрос" для приложений на Мобильной Платформе (УФ)

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

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

1 стартмани

04.02.2019    6895    1    HorusTheOne    0    

Мобильное приложение для формирования заказов. Агент

Мобильная разработка Управление торговлей Управление взаимоотношениями с клиентами (СRM) Оптовая торговля Розничная торговля Управление взаимоотношениями с клиентами (СRM) Оптовая торговля Розничная торговля v7.7 v8 Оптовая торговля, дистрибуция, логистика УУ Абонемент ($m)

Мобильное приложение на платформе Андроид для формирования заказов клиентов. Основное предназначение - работа торговых агентов, представителей, что включает в себя: список клиентов с адресами, телефонами, историей взаиморасчетов; список товаров с остатками, с несколькими типами цен; составление заявки; регистрация поступления оплаты; отслеживание координат. Приложение можно состыковать с 1С любой версии. Поддерживаемые протоколы передачи: файловый (FTP), Web-service, HTTP-service.

1 стартмани

30.01.2019    9161    6    ruslan_hut    2    

Инструкция по применению мобильного приложения 1С:Штрихкоды

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

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

1 стартмани

18.01.2019    8979    3    inord777    1    

Сканер штрих-кодов Сервер + Клиент

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

Мобильное приложение для магазинов одежды, продавец сканирует товар, и ему мобилка выдает остаток +сумму+ склад+ цвет+ размер+ свойство товара.

1 стартмани

18.01.2019    6628    1    enot_tut    0    

Адаптация кода конфигурации для работы с мобильным клиентом

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

С релиза 8.3.12 в платформе стал доступен мобильный клиент, но для его использования конфигурация подлежит адаптации.

1 стартмани

17.12.2018    6273    5    nbeliaev    0    

HTML-редактор для 1С (мобильное приложение)

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

Простой, но полноценный HTML-редактор для мобильного приложения с поддержкой CSS и JavaScript Релиз платформы: 8.3.12 Релиз мобильной платформы: 8.3.13

1 стартмани

07.12.2018    6755    16    djvu    1