Ответы пользователя по тегу Android
  • Можно ли отдельно написать программную часть на java и отдельно "верстку" на Android?

    svd71
    @svd71
    Можно слушать кучу советов, как удобнее превратить явовский фреймворк в функциональное программирование под виндовс, но лучше этого не делать.

    Ваши рассуждения очень правильны и верны: бизнеслогика любого приложения должна быть отделена от дизайна. Тогда любое изменение в дизайне не приведет к изменениям в бизнеслогике. Тем более в Java это делается не просто, а очень просто.

    Создаете классы с бинеслогикой, можете как опцию добавлять тестюниты для проверки нормального функционирования этой логики. Отладку можно вести даже в консоли. После этого можете к созданным объектам цеплять любые графические изыскания.
    Ответ написан
    3 комментария
  • Где найти абсолютно чистую и стоковую прошивку Android 4.2 для процессора MT6572?

    svd71
    @svd71
    Проблема в другом. У каждого производителя свой набор железа: сенсоры, камеры, реализации тачпади и пр, который некоторым образом "стандартизуется" за счёт фреймворка. Боюсь, что может получиться так, что по этой периферии будет несовместимо.

    В своё время ввёл у себя рутовый доступ и просто удалил физически из системы ненужные мне пакеты.
    Ответ написан
    Комментировать
  • Как эмулировать внешний bluetooth-gps для Android с помощю ББ и USB Dongle?

    svd71
    @svd71
    Передача по BT данных от GPS приемника - это обычное соединение по COM-порту и обычные данные в текстовом виде. Не совсем понятна цель, чего вы добиваетесь.

    Вы можете на компьютере подключить BT-донгл, соединить его с GPS-приемником и "насобирать" данных из COM-порт в какой то файл. Затем этот файл истользовать при эмуляции.

    Но есть один нюанс. Андроид использует внутри фремворка определенные объекты (провайдеры) для "стандартизации" обработки различных хардварных реализаций внутри фреймворка. Поэтому вам нужно както зарегистрировать свой провайдер, подсовывающий полученные данные из BT-соединения. И это совсем не является гарантией, что другие службы андроида не будут использовать эти данные для трекинга. Гораздо проще указать в настройках, что вы не согласны делиться трекингом с гуглем, периодически удалять файл текинга, а так же использовать прокси для отсеивания попыток таких передач.
    Ответ написан
    Комментировать
  • Как сделать автозапуск в устройстве на Андроиде?

    svd71
    @svd71
    создается ресивер на BOOT_COMPLITED, кторый после загрузки запустит все, что вы напишите.

    www.learn-android-easily.com/2013/07/bootcompleted...

    ПС: В манифесте нужно не забыть указать разрешение на эту операцию. Иначе ничего не получится.
    Ответ написан
    Комментировать
  • Как раздать wifi с телефона на другие устройства?

    svd71
    @svd71
    настройки-беспроводные сети-модем и точки доступа - переносная точка досупа и там же Точка доступа wifi
    Ответ написан
    3 комментария
  • Как разрешить intent для экземпляра Activity? Есть ли архитектурные ошибки для такой проблемы?

    svd71
    @svd71
    Конечно лучше пойти другим путеи. Если активити одно единственное, то нет нужды общаться интентами. Что мешает сделать фенкцию загрузки нужного лайоута с настройкой событий компонентов лайота и общую для всех лайоутов функцию обоаботки этих событий?
    Активити одно, перезагружать не нужно.
    Ответ написан
    Комментировать
  • Как хранить данные в классах-структурах в Java?

    svd71
    @svd71
    1. Ява небогата ситаксисом и поэтому замену сишным структурам и и паскалевских записям остается хранить в классе. Если дело именно в наборе данных, то ему совсем не обязательно иметь конструктор или геттеры/сеттеры без нужды. Единственное что нужно позаботиться о видимости этих полей (то есть прайвэд тут не катит).
    2. геттеры добавляю когда нужно из таких "структур" прочитать какие то не совсем стандартные записи: например номер дома римскими цифрами или что либо еще такого же плана. Сеттеры - когда нужно какое либо преобразование провести - например из адреса полной строкой выделить только номер дома и квартиры и записать в нужные поля. Дело в том, что структура она и есть структура и не имеет смысла без особой нужны обновлять все что угодно кодом - на его выполнение требуется драгоценное процессорное время.
    Ответ написан
    7 комментариев
  • Как правильно собрать класс и как запустить его функцию с кнопки через OnClickListener?

    svd71
    @svd71
    public void onCreate(Bundle savedInstanceState) //метод описывающий такие элементы как кнопка, поле ввода и вывода
            {
              OnClickListener oclBtnUdp = new OnClickListener() //слушатель нажатия кнопки
                  {
                    public void onClick(View v) 
                      {
                       Sender senderInstance = new Sender();
                       senderInstance.sendMessage("my message");
                       }
                   }
    
            }
    Ответ написан
    2 комментария
  • Как получить доступ к элементу(или методу Activity) с класса Application?

    svd71
    @svd71
    в дизайнере добавить к нужному TextView определенный id (для примера myTextView). Далее добавить в конец метода onCreate() следующий текст.
    TextView myTextView = (TextView) findViewById(R.id.myTextView);


    Дальше работа уже идет с myTextView.
    Ответ написан
  • Как обновить прошивку Samsung Galaxy S Duos GT -D7562?

    svd71
    @svd71
    1) Кеис не обновляет?
    2)На счет альтернативных и собранных на коленке не знаю.
    3)Удалял ненужные приложения через adb. Нужные переносил на флэшку и устанавливал линк на них. Правда не все так чудесно заработали. Но не беда. При этом конфигурацию можно запросто восстановить при переусановке профиля.
    Ответ написан
    Комментировать
  • Как скрыть корпоративные контакты после 18.00 ?

    svd71
    @svd71
    Есть такая возможность. Я пользуюсь с разбиением на группы.
    Ответ написан
    3 комментария
  • Как использовать Search Dialog?

    svd71
    @svd71
    что мешает отбравить такой запрос:
    https://www.google.com/?q=искомый+текст
    Ответ написан
  • Клавиатура android

    svd71
    @svd71
    не советовал бы начинать изучения фреймворка с написания "своей клавиатуры". Но как ближайшая мечта это может рассматриваться.

    Лучше начинать с примеров, кторые находятся в папке SDK/samples. Просто лучше собрать такое демо приложение, а затем по его образу и подобию попробовать слепить свое такое же. После того, как пропадут вопросы с использованием работы именно с фреймворком, тогда уже можно будет попробовать слепить свою клавиатуру.
    Ответ написан
    Комментировать
  • Как удалить объект из памяти, Java?

    svd71
    @svd71
    @oxInSox немного слукавил. Дело в том, что обнулив ссылочную целостность не будет гарантировать уничтожение объекта. После этого желательно и заставить мусоросборник работать
    System.gc();
    Особенно это важно для объектов наследников трэдов и раннебол.
    Ответ написан
  • Как работать в Android Studio?

    svd71
    @svd71
    Код пишется в проекции Java. Во время отладки предлагает отображать в проекции Debug. Там тоже можно редактировать код.

    Но перед работой нужно еще проверить функциональность установки Android SDK.
    Ответ написан
  • Какой у вас опыт разработки мобильных приложений?

    svd71
    @svd71
    С дизайном на первых проектах дела обстоят совсем никак.
    Сначала делал попытки создавать дизайн и бизнесс логику одновременно. Уже с третьим приложением понял, что это глупость:

    Не весь желаемый функциональный дизайн возможно создать с ходу и как задумывалось. В основном из-за незнания всех принципов работы компонентов.

    Поэтому дизайн с украшательствами появляется уже после опробывания всей логики работы.
    Ответ написан
    Комментировать
  • Что выбрать для соединения iphone и arduino по воздуху?

    svd71
    @svd71
    нет. модули одни и теже. соедитение происходит с созданием последовательного порта. Просто на Android куча мануалов и он более доступен для экспериментов.
    Ответ написан
  • Что скрывается за понятием сlass в ООП?

    svd71
    @svd71
    ваши рассуждения - лапша полнейшая.

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

    Другая интересная особенность - это классовые методы и поля (или применительно в к Яве - статические). Эти элементы уже распределены в классе в единственном экземпляре. Потому они и доступны из любого объекта. Но отличие таких методов от объектовых - первая переменная всегда ссылается на начало класса. Это значит в таких методах ничего не известно что творится в объектах. Да и вызов из них методов объектов всегда требует наличие самого уже созданного объекта. В некоторых ЯП такая проверка не проводится. поэтому можно иногда "смухлевать" : если в методе нет работы с полями объекта или ссылок на другие методы, где ведется работа с полями объекта, можно фиктивно вызвать указав, что объект это 0 (пример такого "глюка" есть в С++, в Дельфи, в ПХП [хотя это не язык]).

    Поосторожней со словом "интерфейс". В ЯП интерфейсом называется расширение функциональности классов, внося в них общие признаки. Классы можно масштабировать только наследованием (инкапсуляцию касаться не будем). То есть два класса невозможно объединить общими признаками, если они не "родственники". Но тут на помощь приходят интерфейсы. Если предствить наследование как "вертикальное" расширение, то с интерфейсам добиваются "горизондального" расширения.

    Теперь о событиях. Для того, что бы организвать какое то событие в ЯП нам необходимо знать две вещи: объект, который должен реагировать и метод, который нужно вызывать в этом объекте. Это означает, что событие описывается минимум двумя полями. В Яве это довольно проблематично каждый раз сосдавать такую сложную структуру. Поэтому для событий придумали листенеры - объекты, расширенные каким-либо специфическим интерфейсом. Наличие в объекте такого интерфейса дает гарантированное присуствие нужного метода и нам нужно сохранять только ссылку на нужный объект.
    Ответ написан
    4 комментария