Archive for the ‘Android’ Category

Windows 8 и таблетите: стрелба по Apple?

January 19th, 2012   

Тези дни излязоха изискванията, които Microsoft поставят пред производителите на таблети, за да им разрешат да слагат Windows 8.

Някои от тях изглеждат доста пресилени, други малко странни, но вероятно MS си имат основателна причина да ги дефинират така. Нека ги видим някои от тях:

  • " The border area should not be less than 20mm" -- по принцип съм фен на това изискване, защото все пак таблета трябва да има как да се хване удобно (и здраво) без да се пипа неволно по екрана. От друга страна толкова дебела гранична област прави таблета да изглежда грозно тантурест, което няма да се хареса на много хора, а и да не забравяме, че когато се гледат в магазина два таблета един до друг, обикновените потребители избират този, който изглежда по-добре, т.е. това много вероятно няма да е този с Win 8.
  • "must have five physical buttons: power on/off/sleep, rotation lock, Windows  button that can be felt, volume up/down button." -- и Гугъл имаха изисквания за еди-колко си хардуерни бутона, но с времето ги намалиха. Според мен същото ще се случи и тук най-малко ще отпадне rotation lock.
  • "The tablet must have at least one USB 2.0 port as well as integrated speakers." -- Това е пресилено изискване. Много хора, особено тези, които не използват таблетите за игри въобще не се нуждаят от стерео говорители. За тях дори една калпава пищялка, която да дрънне когато правят непозволено действие ще им е достатъчна. Отделно от това: доколко стереото в таблетите има смисъл (поне тези <= 10″)?
  • "must support minimum native display resolution of 1366*768" -- пресилено и според мен безсмислено. Много хора си купуват таблет, за да четат на него. Голямата резолюция е много хубаво нещо, но и по-скъпо. Значително количество потребители ще предпочетат евтин 7″ 800х600 android таблет.
  • "Microsoft also insists upon tablets ability to playback high-definition" -- пресилено и безсмислено в много случаи (също както горното).
  • "The slates and convertibles must also support magnetometer, gyroscope, three-axes accelerometer, ambient light sensor" -- хубаво е на табелата в магазина да има изписани, колкото се може повече неща, за да се впечатляват купувачите, но това ще доведе до по-висока цена и неконкурентноспособност спрямо андроид таблетите.

Доколкото мога да преценя, идеята на MS е да дефинират техните таблети като геймърска платформа -- висока резолюция + пълен комплект сензори за управление. Трудно е да се прецени доколко това е добра идея. От една страна, игрите са много добра мотивация за закупуване на такова устройство, но от друга си ограничават аудиторията до по-младите, да речем под 3о години и до по-платежоспособните. В момента, андроид таблет със сходни параметри е към 500 евро. Колкото и MS да субсидират таблетите с Win8 едва ли (more…)

Андроид срещу iOS. Моментно състояние на религиозната война.

January 11th, 2012   

Според последните данни от Gemius за България, които са налични ето тук Андроид заема 0,29% от обема на "page views", а iOS има 0,24%, т.е. Android вече води с 20% разлика.

Ако цъкнете на "Mobile devices models", изтеглите си статистиката на файл и групирате на база операционна система, както съм направил съвсем грубо тук  резултатът е: iOS 37,9%, Android 32,5%, Nokia 14%, т.е. оттук излиза, че iOS все още води, което е в противоречие с предишната статистика. Най-вероятно това се дължи на (more…)

Никога вече Samsung

December 21st, 2011   

В тази новина се казва, че Samsung били публикували план за upgrade на Android телефоните си до ICS, т.е. до Андроид 4.0. В него не е включен моят телефон Galaxy S, който само до преди година се водеше флагманския им (и съответно струваше маса пари). Не стига, че забавиха с година update-а до Froyo, а сега смятат да оставят сами в тъмното всички собственици на Galaxy S. Всичкото това се случва отгоре на масата бъгове и простотии, които направиха с модификациите си на Android досега (най-известният от които е така наречения "лаг", който се дължеше на неудачния избор на файлова система за swap-a и който и до ден днешен си го къткат).

Тъй като са последните дни на декември, вече съм си изразходвал лимита от сочни псувни за тази година, затова не мога да напиша половин страница от тях по адрес на Самсунг.

Бях им един от най-верните клиенти -- монитори, принтери, дискове, телефон (и се гласях за още един тяхно производство следващата година) и т.н., но се опасявам, че повече не мога да им търпя тотално неадекватната политика по отношение на софтуерните update-и.

Никога вече Samsung.

Впечатленията ми от курса "Въведение в програмирането за Андроид"

August 10th, 2011   

Преди около два месеца от Bulwork се свързаха с мен с идеята да водя организиран от тях курс "Въведение в програмирането за Андроид". Бяха събрали 10 човека, повечето от тях все още студенти. Имах сериозни притеснения от това, че групата е прекалено голяма, но в крайна сметка нещата се наредиха. Bulwork осигуриха асистент, който да се занимава с курсистите следобед (теоретичната част беше от 10 до 12-13 на обяд).

Курсът беше с продължителност 40 часа (само "теорията", следобедните занимания с асистента си бяха отделно), като идеята беше да са по около 2 часа на ден (понеделник до петък), т.е. да приключим за около месец.

Основната ми идея беше да има много практически упражнения, т.е. да е по-скоро workshop отколкото курс -- взема се малко теория (логически обособена част) и веднага се (more…)

Solution for android problem with sending manual GPS location to the emulator via DDMS view

September 4th, 2010   

Many Eclipse users report that they cannot send GPS location via DDMS view (using Manual, GPX or KML). After about one hour of struggling with the DDMS and searching with Google I found that the problem is caused by the locale used by Eclipse, i.e. if you are in some european country your locale (and lang) will not be set by default to en_US (for example). This obviously confuses eclipse/ddms and it cannot send location data correctly (probably because of wrong decimal separator interpretation).

Solution: open your eclipse.ini (found in your eclipse install dir) and add the following line:

-Duser.language=en

and restart Eclipse. This will allow you to send GPS locations to the emulator.

More about this bug you can find at android's bug tracker, Issue 915.

Publishing APKs on your own web server (apache)

August 26th, 2010   

Yesterday I had some trouble publishing APKs my own site and I will share that experience.

I copied an APK to my server, tried to download it via phone's browser but I repeatedly got this error:

Download unsuccessful

After some investigation I found the solution:

First of all -- ensure that you can download and install APK from other sources (more…)

Android logging explained (differences between classic java logger and android logging)

August 9th, 2010   

If you are used to "classic" Java logger you may be unpleasantly surprised when you try to use Android's logging mechanism.

In classic Java usually you do things like:

Logger myLogger = Logger.getLogger("com.somedomain.someapp");
logger.setLevel(Level.FINE);

… and then you log with:

logger.warning("some warning");
or
logger.fine("some message");
etc.
At first glance things are the same in Android, i.e. you have android.util.Log, you have methods like Log.i("some message"); but there are two important differences:
1. You can't set log level at runtime. You must use:
adb shell setprop log.tag.<YOUR_LOG_TAG> <LEVEL>
Don't try to use System.setProperty("log.tag. …", …) -- it is useless.
2. As stated in Log docs, "Before you make any calls to a logging method you should check to see if your tag should be logged", this means -- android will not filter logs for you (level wise). You have to use something like:
if (Log.isLoggable(tag, Log.INFO)) {
 
Log.i(tag, msg);
 
}
i.e. you should take care for log level filtering. Luckily it is not difficult to create wrapper class around Log in which you overwrite all logging methods using checks like in the above code.