Рубрика «android» - 184

Ionic framework. Обзор экосистемы - 1 Ionic framework. Обзор экосистемы - 2
Ionic framework — один из самых широко обсуждаемых фреймворков. Как гласит официальный сайт, Ionic — это SDK для создания гибридных мобильных приложений, набор CSS и JS компонент, созданный на основе AngularJS, SASS, Apache Cordova.

На момент написания статьи репозиторий Ionic насчитывает 15300 звездочек, а сумма инвестиций в компанию Drifty, чьим продуктом является Ionic, уже достигла $3.7 миллиона.

Посмотрим, что интересного предлагает Ionic для разработчика.
Читать полностью »

Google отвергает обвинения «Яндекса» в нарушении российского законодательства - 1

Компания «Яндекс» подала жалобу в ФАС на Google, обвиняя корпорацию в нарушениях российских законов о конкуренции. «Яндекс» считает, что Google вынуждает партнеров, производящих мобильные устройства, отказываться от установки приложений, конкурирующих с аналогичным ПО Google. Вскоре после подачи жалобы ФАС возбудила дело, пишет «РБК».

​Юрист по корпоративным спорам Google Теро Луко считает, что компания не нарушает российские законы. Дело в том, что у Google заключены партнерские договора с производителями смартфонов. Суть договора — распределение прибыли при установке сервисов Google на платформе Android. Правда, Луко не сообщил условий таких соглашений, но рассказал, какие именно соглашения обычно заключаются с партнерами корпорации.
Читать полностью »

Федеральная торговая комиссия США проверит законность откручивания в детском приложении YouTube для смартфонов и планшетов рекламы. Проверку инициировали организации, занимающиеся защитой прав детей. «Это битва за сердца, умы и карманы американских детей в цифровой век,» — говорит Джефф Честер, глав Центра цифровой демократии.

image
Пятилетняя Джулия Санчез и её брат, двухлетний Франциско Санчез младший, смотрят детские программы на Youtube на смартфонах родителей в Калифорнии.
Читать полностью »

Как я одной кнопкой шарил разные данные в Android приложении - 1

Как-то раз передо мной встала задача добавить экспорт в календарь к уже написанному экспорту обычных текстовых данных через ShareActionProvider кнопку. Сходу нашлись несколько вариантов, каждый из которых мне по каким-либо причинам не подходил.
Читать полностью »

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

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

  • быть бесплатным;
  • быть хорошо фильтрованным, чтобы не нарваться на проблемы с Apple (такая же задача стояла и для версии приложения под iOS).

Я долго серфил интернеты в поисках подходящего контент-провайдера, предоставляющего JSON API. В итоге были отобраны 3 основных кандидата: Google Search, Flickr и Bing Image Search. Был еще один вариант подключения к старым бесплатным API от Google, которые уже лет 5 как в статусе deprecated, но все еще работают. Но этот вариант, увы, не подходил.
Читать полностью »

Дальнейшие эксперименты по скрещиванию Volley и Loader привели меня к мысли о создании библиотеки. Чтобы вызывался Loader с параметрами и в одну строку. На подобии как это реализовано в Picaso. После пары вечеров что-то получилось…

JSON

{
"1":{"name":"Samsung","price":51200.6},
"2":{"name":"Lg","price":5400.6},
"3":{"name":"Alcatel","price":4500.6},
"4":{"name":"iPhone","price":4800.3},
"7":{"name":"iPad","price":2850.1}
}

Data

public class GoodsItem {
    String name;
    float price;
}

Loader

    private String url = "http://192.168.1.103/shop.json";
    private static final int LOADER_GOODS_ID = 1;
    Map<Integer, GoodsItem> mGoodsMap = new HashMap<Integer, GoodsItem>();
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        ...
        FeedLoader.with(this).addLoader(LOADER_GOODS_ID, url, HashMap.class, new DelivererFeedLoader.Listener<Map<Integer, GoodsItem>>() {
            @Override
            public void onResponse(int loaderId, 
                Map<Integer, GoodsItem> goodsMap) {
                mGoodsMap = goodsMap;
                for (Map.Entry<Integer, GoodsItem> entry : mGoodsMap.entrySet()) {
                    Log.d(TAG , "Goods item : " + entry.getKey() + " : " + entry.getValue());
                }
            }
            @Override
            public void onErrorResponse(VolleyError data) {
                Log.d(TAG , "onErrorResponse :" + data);
            }
        }).start(LOADER_GOODS_ID, this);

Читать полностью »

Подводим итоги очередной недели историей о кувалдах и микрометрах iOS-разработчика, автомобильной навигацией, «интересным» шифрованием в NQ Vault, тиранией MVP, мобильными интерфейсами и еще кучей разных интересных вещей.

Дайджест интересных материалов для мобильного разработчика #97 (30 марта-4 апреля) - 1Читать полностью »

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

В статье изложен подход реализации Loader для загрузки разных объектов в одном Activity. В качестве сетевой библиотеки загрузки используется Volley. Метод подходит когда в одном Activity имеется несколько одновременно использующихся фрагментов

public class MainActivity extends ActionBarActivity
        implements LoaderManager.LoaderCallbacks<DataHolder>{
    ...
    @Override
    public void onLoadFinished(Loader<DataHolder> loader, DataHolder data) {
        if ( loader.getId() == DataLoader.LOADER_ICONS_ID ){
           doIcons( data.getIcons() );
        } else if( loader.getId() == DataLoader.LOADER_STYLES_ID ){
           doStyles( data.getStyles() );
        } else if( loader.getId() == DataLoader.LOADER_ICONSETS_ID ){
           doIconSets( data.getIconSets() );
        }

Читать полностью »

Эта публикация о том, как можно в Windows скомпилировать библиотеку для обработки видео и аудио FFmpeg под Android в Eclipse с помощью NDK. Вы узнаете, как связать FFmpeg с библиотекой для обработки изображений OpenCV и как это всё можно использовать в Java-коде Android приложения. Всё это будет рассказано в контексте процесса создания Android приложения, основной функционал которого как раз и завязан на использовании этих библиотек и их взаимодействии. Итак, заинтересованных прошу под кат.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js