Глава Google написал руководство для перехода с iPhone на Android.

178424879Эрик Шмидт – глава корпорации Google, который имеет блестящие навыки по маркетингу, менеджменту и инженерии, проявил  талант настоящего литератора. Мистер Шмитд написал специальное руководство для перехода с операционной системы iPhone на Android. Он опубликовал для пользователей iPhone  свой мини учебник в сети Google+.

Руководство достаточно краткое, содержит всего 900 слов. В нем Эрик Шмитд проявил все свои таланты маркетолога, рассказав, что почти всего его друзья, имея достаточно оснований, перешли с iPhone на Android. Главным мотивом этого стало то, что устройства  Samsung (Galaxy S4), Nexus 5 (для AT&T, Sprint, T-Mobile) и Motorola (Verizon Droid Ultra) имеют значительно удобнее интерфейс, произведены с более качественным экраном и быстрой работой системы. Об этих особенностях, которые существенно изменили мнение о iPhone Эрик Шмитд пишет во вступлении. Далее он описывает шаги, которые избавят от «iPhone-зависимости». Также, талантливый глава корпорации Google добавляет: «Смартфоны на Android станут отличным подарком для обладателя iPhone».

androida-1358700227На первый взгляд, кажется, что это банальный маркетинговый ход, но если учесть, что глава Google указал конкретные модели, которые имеют Android и являются более качественными, то можно сделать соответствующий вывод.  Кроме того, он отметил, что клиенты, которые перейдут на телефоны с операционной системой Android, будут иметь функции, которые колоссально облегчат процесс. Также президент Google подметил, что на сегодняшний день 80% пользователей используют систему Android.

Google ввел функцию распознавания украинского рукописного текста, но изменил политику на счет рекламы

imagesНовость от Google Docs и  Gmail – новая возможность, вводить рукописный текст на украинском, и при этом система будет распознавать его. Вводить возможно мышью или трекладом.  Украинский блог Google сообщил, как пользоваться его новинкой. Компания объясняет: « Следует зайти  в настройки   Google Docs или Gmail ввода текста и выбрать ввод языка – рукописный, если Вы хотите его использовать. Затем пишите в специальной панели один или пару  соответственных символов, а затее они появятся у Вас в документе или в сообщении.»

На сегодняшний день в Google Docs рукописный ввод возможен на более чем 20 языках, а у Gmail более чем на 50 различных языках.

6812ce7cc484ad67de94f7544669c92fТеперь, не самая радостная новость о изменениях политики в Google? Которая касается рекламы.  Совсем недавно, Google объявили о том, что их корпорация ( так называемая «корпорация добра») будет иметь возможность использовать фотографии и имена для рекламы.  То есть, пользователь, который подписан на продукт  Google + , зарегистрирован и пишет комментарии, может обнаружить свои «рекомендации» под рекламным продуктом.

Хорошая новость заключается в том, что такая техника рекламирования будет использовать фото и имя исключительно взрослых, пользователей старше 18. Остальные, помладше автоматически исключаются.

Как понравится поисковым системам новым интернет — магазинам?

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

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

1) Стабильная и безошибочная работа сайта или интернет –магазина .

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

2) Правильный отбор и отметки ключевых слов на страницах для дальнейшего продвижения.

загруженное (1)

Правильное назначение ключевых слов является чуть ли не фундаментом улучшения поискового рейтинга. Что бы подобрать ключевые слова можно воспользоваться статистикой поисковых систем, а именно инструментами подбора ключевых слов. Такими инструментами являются  Яндекс Wordstat и Google Adwords.  Еще можно подобрать слова, которе будут ключевыми статистикой трафика, который уже есть на сайте или статистикой конкурентов.  Также можно определить ключевые слова специальными сервисами: в Украине- Prodvigator.ua, в России — semrush.com. Существует и общепринятое правило отбора и назначения ключевых слов на странице. А именно:  для слова более высокочастотного нужно брать для продвижения меньший уровень вложенности страницы .

3) Регулировка верстки для SEO заданий.

Системы поиска предпочитают организованный контент на сайте. В связи с этим советуют делать на страницах  создаваемого сайта главные  заглавия с основными ключевыми словами. Заглавия текста существуют разные. Главное обозначается специальным тегом-  <H1>, который не должен повторяться на странице вообще.  Другие- подрядные заглавия : <H2> – <H6> могут попадаться несколько раз на странице или вовсе не попадаться. Помимо этого текст можно выделять разметками за логикой , такими тегами: <strong>  и <em>. Для этих тегов есть аналоги,  такие как теги «<B>» та «<І>». Поисковые системы разметке за логикой отдадут большую значимость этих выделенных фрагментов.

4) Правильный сайт с соответствующим текстом.

загруженное

Главным назначением текста на сайтах является удовлетворенность потребности пользователей. Раскрывая главную идею страницы, Вы даете возможность пользователю, найти самое подходящее и нужное для него. Системы поиска же в ответ будут считать сайт более значимым и качественным. Очень влияет на позицию сайта и уникальность текста. Имеется в виду текст, которые еще не были опубликованы в интернете. Уникальность текста можно проверить с помощью специальных сайтов и сервисов. Рекомендуется не создавать много ключевых слов на страницах сайта.  Когда на сайте обилие ключевых слов, обычно поисковики видят сайт, как сайт с текстовым спамом, который вредит  продвижению сайта.

5) Влияем на факторы поведения вашего сайта.

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

Что бы улучшить поведенческий фактор можно создать «снипеты» — привлекательное описание вашего ресурса, когда ваш сайт выбило в поиске. Таким образом, сайт привлекает больше людей, и они переходят на сайт чаще. Также, можно использовать микро – разметку, которая будет размещать часть интересной информации. Например фотографии, цены , имена и другое. Поимо этого можно сделать сайт более удобным. Например,  для сайта услуг такси человеку хватит ля решения своей проблемы или задачи просмотра лишь одной страницы, а если пользователь отправляется в интернет-магазин, то ему нужно просмотреть как минимум пару страниц.

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

Google Play Music заработал еще в 9 европейских странах

2Сегодня, музыкальный сервис Google, начал свою работу еще в 9 странах Европы. Доступ к Google Play Music All Access теперь имеют Австрия, Бельгия, Франция, Ирландия, Италия, Люксембург, Португалия, Испания и Великобритания.

О запуске своего музыкального сервиса Google объявил еще 15 мая 2013г., правда тогда он был доступен только на территории США. Стоимость подписки 9,99 евро, можно воспользоваться тестовым бесплатным доступом в течение месяца.

Ждем когда и у нас появится Google Play Music All Access.

1

Google Analytics тестирует новый инструмент Universal Analytics

Google Analytics выпустил в бета-тестирования, новый инструмент Universal Analytics, который они анонсировали в октябре прошлого года. На данный момент к бета-тетсирования приглашаются все пользователи Google Analytics.

Основные преимущества нового инструмента:

  • Сбор и пересылка входящих данных с любого устройства в аккаунт Analytics. Теперь можно будет отслеживать не только веб-сайты;
  • Сбор данных по всем каналам продвижения клиента, маркетинговые кампании, телефонные продажы…
  • Персонализированные показатели и определение собственных параметров отчетов.
  • Проверка эффективности мобильных приложений.

universal-classic

Получить доступ к тестированию вы можете оставив здесь заявку.

По материалам Google

Google в Тель-Авиве

Кто еще не видел новый офис Google в Тель-Авив?  Много зелени, дерева, красочных диванов. Особенно радует вид из окна и собственный тренажерный зал.

Источник

Android. Особенности работы с SQLite

В настоящее время все большую популярность набирает OS Android. С ростом популярности платформы расширяется и круг задач, которые пользователь хочет решить здесь и сейчас. Среди задач встречаются такие, которые требуют обработки большого объема данных за приемлемое время, так, например, полнотекстовый поиск по базе. В качестве базы данных на OS Android используется SQLite. Для работы с SQLite существует пакет android.database.sqlite. Однако данный пакет содержит только набор инструментов для работы с базой. Он не является фреймворком, регламентирующим подход к реализации доступа к данным.

На данный момент Google не предоставляет подробных рекомендаций по работе с базой данных. В официальной документации приводится лишь 2 простых примера, использующих SQLite (“NotePad” и “SearchableDictionary”). Поэтому программисты сами вырабатывают собственные подходы к реализации работы с базой данных, и, как результат, возникает множество различных способов – зачастую неверных.

Выработать правильный подход к реализации достаточно сложно. Основными проблемами являются слабо документированные и неочевидные особенности в классах пакета android.database.sqlite.

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

database is locked – возникает при многопоточной записи в базу.

database is closed – может возникнуть при работе с базой из разных частей программы, например, Activity и Service.

corrupted database – возникает, если файл базы данных был испорчен либо пользователем, либо при неожиданном прерывании записи в базу (выключение телефона, ошибка OS, нехватка пространства, битые сектора на SD карте и т.д.)

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

Рассмотрим подробно как причины возникновения и возможные «неявные» проявления данных проблем, так и методы их решения.

Проблема “database is locked” (она же многопоточность)

У программистов часто возникают вопросы “Как лучше работать с SQLiteOpenHelper“. Действительно – поскольку к слою доступа к данным может обращаться практически любая часть программы (сервис, presenter, widget … ), то SQLiteOpenHelper должен быть доступен везде, где есть Context. Также встает вопрос, стоит ли для каждой части программы создавать свое соединение с базой, увеличится ли от этого скорость выполнения запросов. Возникают вопросы о многопоточном доступе к базе, и, конечно, о блокировках при записи.

Прежде всего, нужно отметить, что блокировки в SQLite выполнены на уровне файла. Это гарантирует блокировку для изменений из разных потоков и соединений. Причем читать базу может много потоков, а писать только один. Более подробно о блокировках в SQLite можно узнать из документации SQLite. Нас же интересует именно API, предоставляемое OS Android.

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

Если вы пишете из двух потоков одного соединения, то один поток будет ждать, пока закончит писать другой.

Если вы пишете из двух потоков разных соединений, то произойдет ошибка – ваши данные не запишутся в базу, а приложение вылетит с SQLiteDatabaseLockedException.

Становится очевидным, что приложение всегда должно иметь только один экземпляр SQLiteOpenHelper (именно открытого соединения), иначе в любой момент может возникнуть SQLiteDatabaseLockedException.

Разные соединения в одном SQLiteOpenHelper

Всем известно, что SQLiteOpenHelper имеет 2 метода предоставляющих доступ к базе getReadableDatabase() и getWritableDatabase(), соответственно для чтения и записи данных. Однако в большинстве случаев реальный сonnection один. Более того, это один и тот же объект:

SQLiteOpenHelper.getReadableDatabase()==SQLiteOpenHelper.getWritableDatabase()

Это означает, что нет никакой разницы, с помощью какого из этих методов читать данные. Но гораздо важнее другая недокументированная особенность – внутри класса SQLiteDatabase есть собственные блокировки – переменная mLock. Блокировки для записи на уровне объекта SQLiteDatabase, а поскольку на чтение и запись экземпляр SQLiteDatabase один, то чтение данных тоже блокируется. Особенно хорошо это видно при записи большого объема данных в транзакции.

Помимо внутренних блокировок класс SQLiteDatabase имеет еще одну интересную особенность: данный класс (до API 11) позволяет создавать транзакции только в режиме exclusive transaction. Из-за этого при активной работе с БД могут возникать задержки. Рассмотрим пример приложения, которое при первом старте должно в фоне скачать большой объем данных(~7000 строк содержащих BLOB) и сохранить их в базу. Если данные сохранять в транзакции, то сохранение занимает ~45сек, но при этом пользователь не может пользоваться приложением, поскольку все запросы на чтение заблокированы. Если же данные сохранять маленькими порциями, то процесс обновления данных затягивается на достаточно долгий срок (~10-15 минут), зато пользователь может все это время без каких-либо неудобств безболезненно пользоваться приложением. “Палка о двух концах” – или быстро, или удобно. Причины данной проблемы и некоторые выводы более подробно освещены в статье Kevin Galligan “Android Sqlite Locking”.

Как же бороться с данным “стандартным” поведением? В новых версиях Android, начиная с API 11, Google уже начали исправлять часть проблем связанных с работой SQLiteDatabase – были добавлены такие методы как:

beginTransactionNonExclusive() – создает транзакцию в “IMMEDIATE mode”.

yieldIfContendedSafely() – временно завершает транзакцию, для того, чтобы другие потоки могли выполнить свои задачи.

isDatabaseIntegrityOk() – проводит проверку целостности базы данных.

Более подробно описано в документации.

Однако для старых версий Android тоже необходим данный функционал.

Решение

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

SQLiteDatabase.setLockingEnabled(false); Отменяет использование внутренней блокировки запросов – на логическом уровне java класса (не связано с блокировками в терминах SQLite).

SQLiteDatabase.execSQL(“PRAGMA read_uncommitted = true;”); Позволяет читать данные из кеша. По сути, изменяет уровень изоляции. Данный параметр должен устанавливаться для каждого соединения заново. Если соединений несколько, то оказывает действие только на то соединение, которое вызвало данную команду.

SQLiteDatabase.execSQL(“PRAGMA synchronous=OFF”); Изменить способ записи в базу – без “синхронизации”. При выключении данной опции, база данных может быть повреждена при неожиданном сбое системы, либо отключении питания. Однако согласно документации SQLite некоторые операции при выключении данной опции выполняются более чем в 50 раз быстрее.

К сожалению не все PRAGMA поддерживаются в Android, например “PRAGMA locking_mode = NORMAL” и “PRAGMA journal_mode = OFF” и некоторые другие не поддерживаются. При попытке вызвать данные PRAGMA приложение вылетит с ошибкой.

В документации для метода setLockingEnabled сказано, что данный метод рекомендовано использовать лишь в том случае, если вы уверены, что вся работа с базой ведется из одного потока. Нам придется самим гарантировать, что в единицу времени будет выполняться только одна транзакция. Также вместо транзакций по умолчанию (exclusive transaction) нужно использовать immediate transaction. В старых версиях Android (ниже API 11) нет возможности создать immediate transaction через java обертку, однако сам SQLite данный функционал поддерживает. Для инициализации транзакции в immediate mode нужно выполнить следующий SQL запрос напрямую к базе данных,- например через метод execSQL.

SQLiteDatabase.execSQL(“begin immediate transaction”);

Поскольку инициализируем транзакцию мы прямым запросом, то и завершать её нужно аналогично: SQLiteDatabase.execSQL(“commit transaction”);

Осталось только реализовать свой TransactionManager, который будет инициировать и завершать транзакции нужного типа. Задача TransactionManager – гарантировать, что все запросы на изменение (insert, update, delete, DDL запросы) происходят из одного потока.

Проблема “database is closed”

При работе с базой из одной Activity через SQLiteOpenHelper, очевидно, что открывать базу нужно с открытием Activity, а закрывать при закрытии Activity. Но если с базой работает одновременно несколько Activity, несколько Service и часть данных расшаривает ContentProvider, то возникает вопрос: “когда следует открывать и закрывать соединение с базой?”. Если открывать и закрывать соединение после каждого запроса,- то скорость обращения к базе упадет в разы, а если открывать при старте приложения и закрывать при выходе,- то непонятно, когда мы выходим из приложения (а если сервис еще работает, или провайдер еще используется – остается только метод Application.onTerminate()). Но не один из этих методов не является верным. Соединение с базой может закрыться автоматически при следующих условиях:

Если несколько Activity независимо друг от друга будут открывать новые соединения, то может возникнуть ошибка, описанная в предыдущем пункте “database is locked”.

Если открывать соединение с базой при старте приложения и закрывать при Application.onTerminate(), то соединение с базой может закрыться само при очередном вызове Cursor.getCount() или Cursor.onMove(). Если детально просмотреть исходный код соответствующих классов, то видно, что при определенной комбинации условий в конечном итоге будет вызван метод SQLiteDatabase.onAllReferencesReleased(), который вызывает нативный метод dbclose(). Более детально данная проблема освещена здесь, последовательность вызовов и необходимые условия описаны тут.

Возможно, это одна из причин, по которой “ManagedCursor” объявили “Deprecated”.

Данная проблема широко известна и для ее решения предложено множество способов.

Вариант 1

При каждом обращении к базе проверять,- закрыта база или нет, и если закрыта, то переоткрывать её заново.

public synchronized SQLiteDatabase getReadableDatabase() {

SQLiteDatabase db;

try {

db = super.getReadableDatabase();

}

catch (SQLiteException e) {

Log.d(Constants.DEBUG_TAG, e.getMessage());

db = reopenDatabase(dbFile.getAbsolutePath(), null);

}

return db;

}

У данного метода есть очевидный недостаток – если мы обратились к базе, а затем сохранили ссылку на уже открытый экземпляр, и используем полученный экземпляр, не вызывая SQLiteDatabase.getReadableDatabase(), то данный метод не сработает.

Вариант 2

Принудительно добавить фиктивную ссылку на базу и держать её пока база используется SQLiteClosable.acquireReference();

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

Вариант 3

Закрывать и открывать базу после каждого запроса. Данный метод не надежен, поскольку возможно создание двух независимых соединений на запись и произойдет ошибка. Если данный подход использовать только для чтения, то ошибки не возникнет, но значительно замедлит работу приложения (особенно если обращений к базе много).

Вариант 4

Использовать ContentProvider для доступа к базе. Причем желательно использовать именно один провайдер – это легко реализовать, поскольку ему можно добавить неограниченное количество Uri. Суть заключается в том, что ContentProvider сам следит за состоянием базы данных. А вопрос о том, когда базу пара закрывать ложится на OS – она сама удалит старые провайдеры из памяти и вернет их при первой необходимости.

Про работу с ContentProvider подробное описание есть на официальном сайте.

Проблема “corrupted database”

На Android телефонах очень мало места отводится под приложения и это место нужно беречь, иначе пользователь пожертвует вашим приложением в пользу очередной игрушки. Почти все приложения используют базу для хранения данных, и если база слишком большая, то её очень желательно хранить на SD карте. Старые версии Android (2.2 и ниже) не позволяют создавать базу на SD карте через стандартные средства SQLiteOpenHelper, но это можно обойти, если использовать AndroidConnectionSource от ORMLite.

Нужно помнить – все, что видно пользователю может быть удалено. Пользователь может удалить или иным образом испортить файл базы данных, может вынуть SD карту из телефона, и многое другое. Но база может быть испорчена не только пользователем. Телефон – устройство с ненадежным питанием – часть данных может не записаться (особенно актуально – если отключено журналирование), база может быть повреждена при скачивании или при использовании предустановленной базы и т.д. Более подробно, о причинах порчи базы можно узнать из статьи “How To Corrupt An SQLite Database File”.

Если разработчик никак не реализовал алгоритм восстановления базы, то Android сам создаст базу заново. Но бывают случаи, когда базу можно восстановить. Самый простой способ – запросить данные из всех доступных таблиц и вставить в новую базу. Но чаще достаточно выполнить команду “VACUUM” – данный метод пересоздает базу и восстанавливает максимум данных.

Очень часто есть необходимость создать приложение с предустановленными данными. Для этого можно собрать готовую базу и положить в папку raw, а в момент установки приложения база будет скопирована на устройство. Файл с базой лучше расположить именно в папке raw. Папка assets кажется более удобной, поскольку подвергается сжатию, но из данной папки невозможно получить данные объемом более 1 мб ([см. здесь), и поэтому приходится разбивать базу на отдельные файлы по 1мб – что весьма неудобно. Важно, что базу всегда нужно собирать именно на эмуляторе самой младшей из поддерживаемых версий. Поскольку если собрать предустановленную базу на Android 2.3, то на Android 2.2 возникнет ошибка “corrupted database”, хотя на устройствах 2.3 и выше база будет работать корректно.

Оптимизация запросов

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

Не нужно писать запросы, которые возвращают более 1000 строк или данные объемом более 1мб. Всегда используйте оператор limit. Если запрос возвращает более 1000 строк, то будет выдано предупреждение в лог, либо произойдет падение приложения – это зависит от количества свободной памяти и самого устройства. Если нужно отображать длинный список есть два решения:

a) нужно запрашивать список частями, а затем соединять при помощи android.database.CursorJoiner.

b) Реализовывать авто дополняемый список на интерфейсе (список с догрузкой).

Один запрос выполняется значительно быстрее, чем 2 отдельных. Лучше использовать join, но выполнить 1 запрос. Очень важен порядок ограничений на join – чтобы не получилось декартово произведение, из которого потом выбираются строки по оператору where.

Если нужно что-то изменить в базе – делайте это в транзакции. Это не только гарантирует целостность данных, но и значительно ускорит выполнение задачи. Дело в том, что при любом изменении в базе данных рядом с файлом базы создается файл изменений. Если вы делает 100 insert, то 100 раз создастся и удалится файл изменений, а если 100 insert находятся в транзакции, то файл создастся всего 1 раз.

Если нужно создать таблицу из уже существующих данных, то используйте INSERT AS SELECT (не выполняйте отдельные INSERT) – это значительно ускорит время выполнения.

Если вы получили из базы много данных за раз, и этот “большой” запрос повторяется не часто, то очищайте ненужную память SQLiteDatabase.releaseMemory().

В операторе where нужно сначала писать более простые условия.

SELECT * FROM tablename WHERE col1 LIKE ‘%string%’ AND col2 = 123456

работает в 3-4 раза медленнее чем

SELECT * FROM tablename WHERE col2 = 123456 AND col1 LIKE ‘%string%’

Правильное индексирование таблиц ускоряет выполнение запросов в 5-7 раз. Индексировать нужно в первую очередь те поля, по которым идет join, затем те по которым идет поиск. Причем лучше указывать направление работы индекса – например:

CREATE INDEX index_name ON table_name (column_name ASC).

Для больших таблиц с поиском используйте FTS3 это значительно ускоряет текстовый поиск по таблице. Вместо LIKE используйте MATCH, но помните что по умолчанию MATCH работает как поиск слова целиком, а не подстроки. Описание FTS3.

Заключение

В данной статье перечислены основные проблемы при работе с SQLite в Android. К сожалению, в API еще существует очень много пробелов, для решения ряда вопросов отсутствует необходимая документация, а также в процессе работы периодически выявляются ошибки в самой системе. Но радует тот факт, что с каждой новой версией Android API становится все гибче и полнее, ошибки исправляются, а документация расширяется.

Google Drive vs. Skydrive

Не могу удержаться что б немного не пофотошопить

Да, запустил Google свой Драйв (с 5ю гигами), и что?

Неделей ранее давно уже существовавший  Skydrive  (с 25ю гигами) сделал очень много новшеств и дополнений (приложение для iPad, синхронизация с ПК…), но об этом как-то никто ничего не писал.

 Где конкурентное преимущество сервиса которого так ждали?

Изменение алгоритма Google

Инфографика — Изменение алгоритма Google.

Всё течёт, всё меняется. Предлагаем вам ознакомится с самыми заметными переменами в алгоритме поисковой системы Google с 1998. Читать далее Изменение алгоритма Google

YouTube приобрела стартап RightsFlow для определения авторства выкладываемого медиа-контента


Новость о том, что руководство компании Google настроено ввести методику денежных выплат за транслирование клипов на YouTube, никого не удивила. Для этого руководству компании пришлось приобрести стартап RightsFlow, на который будет взвалено задание определять подлинность авторства тех музыкальных треков, которые были выгружены пользователями на своих аккаунтах в YouTube.
Эта информация стала известна благодаря сообщениям издания The Guardian, которое сослалось на топ-менеджмент YouTube. Благодаря новой технологии лицензирования, видеосервис YouTube собирается упростить систему защиты авторских прав и одновременно свести количество претензий относительно «пиратских» копий до минимума. Ведь отсутствие такой профессиональной помощи в недавнем прошлом становилось неоднократным нарушением авторских прав при размещении пользователями различного рода видеоклипов любимых исполнителей или при размещении собственного медиа-контента на страницах видеосервиса.
Что же, теперь компания Google даст возможность музыкантам и группам не просто зарабатывать через свои аккаунты на YouTube, осуществляя активную продажу билетов и сувениров, но и обеспечит многих из них достойным заработком от продаж своих треков через сервер Google Music.
По предварительным данным стало известно, что купленный проект имеет у себя в базе свыше 30 миллионов музыкальных треков для возможности распознавания оригинала среди пиратских копий. Что же касается финансовой стороны сделки, то она пока для всех остается тайной.

Google Chrome – новый лидер рейтинга браузеров?


Google Chrome – уже первый в Рунете.
По данным софт-каталога www.izone.ru, в конце 2011 года наибольшее количество посетителей сайта пользуются браузером Google Chrome. Их доля составила уже 33,5%. На втором месте по популярности у читателей www.izone.ru – Opera (29,5%), а на третьем – Mozilla Firefox (22,1%). Internet Explorer получил только четвертое место со своими 11,8% посетителей. Показательно, что Google Chrome, использовавшийся в конце 2010 года всего 14% посетителей, увеличил свою долю до 33,5%. Напротив, крайне популярный в России и странах СНГ браузер Firefox потерял второе место, скатившись с 28% (данные за 4 декабря 2010 года) до 22% (данные за 4 декабря 2011 года).

Зафиксирован значительный рост Google Chrome и в мировом рейтинге.
Собираемая статистическими сетевыми службами информация также свидетельствует о тенденции к потере доли рынка большинством браузеров, кроме Google Chrome, который стремительно набирает популярность. Более того, по итогам ноября 2011 года, Google Chrome оказался на втором месте в общемировом рейтинге браузеров портала StatCounter.
Пока отрыв от ближайшего конкурента, которым является Mozilla Firefox, незначителен. Однако, глядя на скорость, с которой растет популярность сравнительно нового браузера, становится ясно, что потенциал его роста еще не исчерпан, поэтому в войне браузеров возможно появление нового лидера.

Каковы причины этого явления?
Возможно, по отдельности они бы не оказали такого влияния на популярность браузеров, но случилось так, что все ошибки своих конкурентов, случившиеся в этом году, команда разработчиков Google Chrome сумела использовать с максимальной выгодой для своего детища. Об этом более подробно читайте в статье «Google Chrome – новый лидер рейтинга браузеров?» в Базе знаний портала www.izone.ru.

О софт-каталоге izone.ru
Каталог программ http://www.izone.ru ведет свою историю с 2006 года и на сегодняшний день является одним из крупнейших в Рунете софт-каталогов. За это время на сайт было добавлено порядка 10 000 полезных программ — только легальное программное обеспечение, поставляемое от производителей. Бесплатно скачивая софт с сайта izone.ru, пользователь гарантированно получает качественные программы без вирусов, без необходимости регистрации, без SMS и без навязчивой рекламы.

Ссылки:
Софт-каталог izone.ru: http://www.izone.ru/
Полная версия статьи «Google Chrome – новый лидер рейтинга браузеров?»: http://www.izone.ru/data/google-chrome-novyj-lider-rejtinga-brauzerov.htm
Скриншот izone.ru: http://www.izone.ru/pub/izone_screen.jpg

Контакты для связи:
Владелец проекта: Николай Романов, http://www.izone.ru/mail_form/

Google Schemer: неприятный сюрприз для Foursquare

Недавно в Интернет просочилась информация о серьезных намерениях компании Google покорить рынок геолокационых сервисов. Уже сейчас готовится новый проект под названием Schemer, который, как предполагается, в будущем станет конкурентом стремительно набирающему популярность сервису Foursquare.
Веб-приложение Google Schemer стартовало совсем недавно, и пока его работа ограничивается только инвайтами (т.е. своего рода приглашениями), которые могут поступать только из определенного списка городов, в частности, из городов Америки. Так комментирует работу нового проекта Venturebeat.
Реализация проекта уже давно входила в планы компании, но до настоящего времени все держалось в секрете. Исходя из тех данных, которые все же просочились в Интернет, скорее всего, речь пойдет о старте социального геолокационного сервиса, который сможет составлять и хранить списки мест, людей и активностей с привязкой к местоположению. На сегодняшний день информации об интегрировании нового проекта с социальной сетью Google+ не поступало.
Что же, вполне логично и допустимо, что Google Schemer будет достойным соперником в борьбе за каждого нового пользователя, ведь один из конкурентов — проект Gowalla — уже практически сошел с дистанции – его закрытие намечается на январь 2012 г. По информации, которая стала известна, разработчики Gowalla перейдут в команду Facebook.

В социальной сети Google+ появилось руководство пользователя, рекомендованное для знаменитостей и политиков

Наиболее популярными среди политиков двух стран — Украины и России — являются социальные сети ВКонтакте и Facebook, в то время как для их коллег с запада больший интерес представляет социальная сеть Google+, в которой недавно появилось специальное руководство для чиновников государственных структур, а также для представителей политических партий и различного рода движений.

Речь идет о руководстве, с помощью которого вышеупомянутые категории граждан могут ознакомиться с правилами создания личной страницы в Google+, касается это и правил общения в сети, а также способов привлечения избирателей, возможности проведения агитации на страницах соцсети. К тому же, в данном руководстве представлены примеры страниц политиков и сенаторов Америки, давно и активно использующих возможности соцсети Google+ для массового привлечения избирателей.

Это руководство не первое и не единственное на страницах Google+ . Подобные рубрики уже были представлены для знаменитостей различных сфер общества и для их официальных представителей, есть рекомендации и для СМИ, спортсменов, НГО и даже для университетов.
Компания Google постоянно радует своих пользователей всевозможного рода новинками и сюрпризами. Так, напомним, что недавно был произведен запуск собственных инструментов измерения активности каждого пользователя, а также предложен ряд возможностей для загрузки качественных фотоснимков пользователей.

Бизнес-страницы появились в соцсети Google+

В блоге всемирно известной компании Google  появилось сообщение о том, что недавно на
просторах социальной сети Google+ были запущены страницы для брендов и компаний.
К тому же, намечается более тесная интеграция поисковых возможностей Google с
Google+ .

В число первых обладателей таких страниц для брендов вошли
следующие гиганты мирового масштаба: страницы для игры Angry Birds (безумно
увлекательное игровое приложение, в классическом виде состоящее из 16
эпизодов), страница для бренда Burberry( британская компания, которая стала
одним из лидеров по производству одежды, духов и аксессуаров), страница для
утреннего шоу Good Morning America (проект, без которого американцы не
представляют себе утро), страница бренда H&M( одежда для мужчин, женщин и
детей, обувь, текстиль), страница компании Pepsi ( всевозможные акции,
рекламные ролики, новшества и т.д), и множество других известных мировых марок
и брендов, а также ТВ-проекты( самые популярные во всех уголках мира) и
странички для спортивных команд.