Showing posts with label Android. Show all posts
Showing posts with label Android. Show all posts

Saturday, 3 March 2012

Automatically Arm and Disarm IP Camera using Tasker


I could not find any good Android apps that made it simple to arm and disarm my camera (only real option was "Remote4cam"). I wanted a location based approach  as I really didn't want to do it manually as that would be a pain and I'm forgetful :-)

So I have created a Tasker profile which will disarm my camera when I'm at home and arm it when I leave.  It will display its current state in a permanent Android notification.  I can override the automation with arm and disarm widgets on a homescreen (see picture at top right). It will detect errors in the process and the notification will in that case have a red "X" icon and contain the reason code (http status).

I have a Foscam FI8904W camera but the script will probably work without too many changes for any IP camera. It is written to handle a single camera but you could modify it for more (and decide how you want to handle errors etc).

I have replaced all personal information (passwords, gps coord, port number etc) in the Tasker profile file so you should change any string that looks like "{REPLACE:something}" with the correct value for the something and then import the corrected profile.  The GPS coordinates of the profile are easiest fixed after importing the profile into Tasker.

I recommend setting up a specific camera userid for the use of Tasker and it may be wise to change it's password occasionally if you are paranoid :-)

To import the profile press and hold the "Profiles" tab and select import from the menu that popped up.  The widgets you can create yourself, select the "Task" widget and select the correct task.

Note that you will need to have set up appropriate port forwarding on any routers etc to get to your camera, please verify that you can remotely access your camera via a browser, this will also mean you will know the correct value for the port number etc.

Disarm means untick "Motion Detect Armed" in "Alarm Service Settings" and arm means tick it and set up values for the other options.  Note that the "api" of this camera has the sensitivity reversed so if you have a sensitivity of "4" via the web page you will need to set  "6" (10-4) via this Tasker script.  In any case you want to review the options and verify them after disarming and re-arming.

The following is a summary of the configuration (as generated by Tasker) (you can download a profile you can import by clicking here):

Profile: ArmDisarmCameras (13)
Priority: 5 CoolDown: 300
Location: -37.839915 / 145.191906 / 300.0m
Enter: Disarm_IpCamera (38)
Abort Existing Task
A1: Flash [ Text:Disarming Camera.. Long:Off ] 
A2: Set Widget Label [ Name:Disarm_IpCamera Label:Disarm ] 
A3: Notify Cancel [ Title:Camera Disarmed Warn Not Exist:Off ] 
A4: Notify Cancel [ Title:Camera Armed Warn Not Exist:Off ] 
A5: HTTP Get [ Server:Port:{REPLACE:YourCameraDnsNameOrIpAddress}:{REPLACE:PortNumber} Path:set_alarm.cgi Attributes:motion_armed=0
user={REPLACE:UserId}
pwd={REPLACE:UserPassword} Timeout:10 Mime Type: Output File:$tmp/DrivewayCamera-DISARM.htm Continue Task After Error:On ] 
A6: If [ %HTTPR ~ 200 ]
A7: Notify [ Title:Camera Disarmed Text:Disarmed at %TIME on %DATE Icon: Number:0 Permanent:On ] 
A8: Else 
A9: Vibrate [ Time:100 ] 
A10: Notify [ Title:Camera Disarmed Text:[%HTTPR] Disarming failed at %TIME on %DATE Icon: Number:0 Permanent:On ] 
A11: End If

Exit: Arm_IpCamera (36)
Abort Existing Task
A1: Flash [ Text:Arming Camera.. Long:Off ] 
A2: Set Widget Label [ Name:Arm_IpCamera Label:Arm ] 
A3: Notify Cancel [ Title:Camera Disarmed Warn Not Exist:Off ] 
A4: Notify Cancel [ Title:Camera Armed Warn Not Exist:Off ] 
A5: HTTP Get [ Server:Port:{REPLACE:YourCameraDnsNameOrIpAddress}:{REPLACE:PortNumber} Path:set_alarm.cgI Attributes:motion_armed=1
motion_sensitivity=6
iolinkage=1
mail=1
upload_interval=1
schedule_enable=0
user={REPLACE:UserId}
pwd={REPLACE:UserPassword} Timeout:10 Mime Type: Output File:$tmp/DrivewayCamera-ARM.htm Continue Task After Error:On ] 
A6: If [ %HTTPR ~ 200 ]
A7: Notify [ Title:Camera Armed Text:Armed at %TIME on %DATE Icon: Number:0 Permanent:On ] 
A8: Else 
A9: Vibrate Pattern [ Pattern:0,50,100,50,500,50,100,50 ] 
A10: Notify [ Title:Camera Armed Text:[%HTTPR] Arming failed at %TIME on %DATE Icon: Number:0 Permanent:On ] 
A11: End If 

Let me know of any issues as I haven't actually "round tripped" the exported profile.

Saturday, 31 December 2011

Fix Metadata in Samsung Galaxy Nexus Panorama Photos

The camera in the Samsung Galaxy Nexus makes it simple to create landscape panoramas, the problem is (at least in ICS 4.0.1 ) that it has a bug which forgets to add the camera and picture details (meta data).

Apart from not being able to easily see what camera took what picture in Windows Explorer, it prevented me from fixing up images modified by Picasa as described at "https://plus.google.com/101791833503159629380/posts/ceH1fTsWRyM".

I have created a batch file which can be run over these file, it prompts for the name of a JPG file or directory name and will create a copy of the image and mark it "FIXED", it does not change the original image as a safe precaution.

You can download  "FixUpPhotoMetaData.zip" from my site, it has been tested in Windows 7 but would be surprised if it didn't run everywhere.  It does require that you also download "exiv2.exe", you can install this in the "PATH" or in the same directory as my batch file.

It easiest to create a shortcut to the file on your desktop.

This is an example of the added metadata:
Exif.Image.Make                   = [Samsung]
Exif.Image.Model                  = [Galaxy Nexus]
Exif.Photo.DateTimeOriginal  = 2011:12:21 12:03:00
Exif.Photo.DateTimeDigitized = 2011:12:21 12:03:00
Exif.Photo.UserComment       = _FixUpPhotoMetaData_.cmd (FIX_NEXUS_PANORAMA_PHOTO_INFO, v11.263)

Tuesday, 9 August 2011

If GoldCardTool fails use GoldCard Helper :-)

Hi,

For my HTD DESIRE HD, I tried "GoldCardTool.exe" version 0.0.7 and 0.0.5 as recommended, this failed to retrieve a CID for MMC1 but did for MMC1, unfortunately this (reversed) CID did not work resulting in the "Error [131]: CUSTOMER ID ERROR" message. Of course they wouldn't have wanted to check this earlier in the RUU's execution would they :-(

After proving with a hex editor that "GoldCardTool.exe" was correctly updating the first sector of the sdcard, after much googling I found "GoldCard Helper", this tool gave me two reversed cids, MMC2 and MMC0, unfortunately it would only copy MMC0's which was the same as I'd already tried, so I manually typed MMC2 off the screen, used the website to create the gold card image and then the "GoldCardTool.exe" to update the sdcard and it worked :-)

As I'd seen a different CID reversal scheme which reversed nybbles (characters), I can say that certainly that is not the case for my HTC DESIRE HD and it reverses bytes (character pairs) and changes the first two to "00" (as "GoldCardTool.exe" and does and most other websites specify).

Anyway hope that helps someone else...

Sunday, 17 April 2011

Diagnosing Intermittent Android Events Such As Reboots via Log Capture

When your phone's problem doesn't involve reboots and it is fairly predictable etc you can use tools like "Log Collector" to manually send an email to yourself containing the log of Android's activity after you have noticed the issue occur.

When a reboot is involved (like the HTC one that occurs to me overnight) you really want to record what is happening all the time and the reboot will effectively stop the recording for you :-)

I've been using "CatLog - Logcat Reader!" but another possibility I found was "aLogcat (free) - logcat" (just found a CatLog varient called "LogViewer (LogCat)").

The "CatLog" program has a "Write Period" setting, the smaller the value the closer you will capture to the time of reboot but the more it will impact (I'm guessing) your phone's performance. As it writes to the SDCARD, if its the cra@ppy one that came with your phone the performance won't be as good as with a class 10 card :-)

I'd also recommend that you power your phone or at least watch the remaining charge closely to know how much it impacts your battery life.

If you don't mind being attached to your computer then the Android SDK's "Dalvik Debug Monitor" (DDMS) can capture this trace information also and doesn't have the "Write Period" issue either :-)

Tuesday, 5 April 2011

Issues with the Android Market

There are many thing right with the market however these are the main issues wit it (in MY opinion):

  1. Regardless of what some people think having only FREE & PAID categories (which can't sell for $0.00) force authors to call DEMO and TRIAL products "free" when most people (except perhaps the author or a lawyer) would consider that unreasonable. Free does not just relate to money and no one can take something freely given to me from me. The PadGen standard defines "Shareware", "Freeware", "Adware", "Demo", and others so I'm not alone in thinking two is crazy.
  2. You can't sell or transfer purchases (even to yourself on a new email address).
  3. If you do choose a refund, you can't do it again when a new release comes out (which hopefully fixes the reason you refunded in the first place)!
  4. You only have 15 minutes from when you paid (not after download!) to decide if you want a refund.
  5. There are many products where even 24 hours is not enough to evaluate the product which is why products like "Touch Down" are forced into producing trials outside the market or deceptively categorising trials/demos as "free". The author should be allowed to specify the refund period. Hopefully users will be loyal to those authors who allow a longer return period.
  6. You can't choose the default install location (SDCARD or PHONE), mine defaults to SDCARD (when the app supports it) and on my HTC DESIRE HD this causes constant issues with A2SD corruption and the SD CARD unmounting itself.
  7. You can set up "auto update", however unless you don't pay for 3G data you won't as the there is no "Auto Download on WIFI Only" option.
  8. You can't get a clear list of purchases you have made.
  9. When you can't auto update because permissions have changed, the permission changes are not highlighted.
Anyway thats my list :-)




Monday, 28 March 2011

HTC Desire HD Boots Loudly and Nightly

I've been noticing that HTC have been doing stealth updates of their "HTC Sync" (and probably sense etc), I think this had fixed my nightly reboots as I haven't had any for quite a while but they are back.

I've been woken up the last 2 nights. I've rebooted the phone as its been 17 days just in case but I'm guessing I'll probably get woken up tonight :-(

Saturday, 26 February 2011

Auto Rotate not working on Samsung Galaxy Tab? Blame Samsung...


My wife asked me why auto rotate (swapping between portrait and landscape modes) wasn't working any longer on her Samsung phone. I found this was fairly common but no one had a fix, I was hoping it wasn't a hardware issue...

After a bit of playing I posted this solution.

Basically some idiot decided that the "Orientation lock" in Samsung's notification bar should toggle a different value than Android and all existing toggle widgets! This means that there are two autorotate locks and both have to be on for it to work!

So to avoid this issue either never use Samsung's "Orientation lock" (and leave it turned on) or always use it and never use a widget.

To fix the issue make sure Samsung's "Orientation lock" is on and then reinstall or use your widget/tool to also turn it on and confirm that autorotate now works (then uninstall or never use it again). If you have a hardware issue then bad luck...

I documented this issue to help you, so hopefully it has :-)


Wednesday, 16 February 2011

Using ADB.EXE to Capture a Bug Report (useful way to capture phone properties and logs)

I created the batch file "BugReport.cmd" so I could use the "Android Debug Bridge" to capture debug information into a date stamped filename. This captures firmware build versions, the system log (logcat), System properties, service states and much more.

First off though you need to install "ADB.EXE" and any dlls it might require. I tested this on Windows 7 (64 Bit) but can't see why this wouldn't work on WINXP or even WIN2000.

If you have install Samsung KIES or HTC Sync (or any similar sync software) you will already have a version of "ADB.EXE" installed, its easiest to either install the batch file into the same directory or make sure that the directory is listed by the "PATH" environment variable. If you can't find it you'll have to install the SDK etc.

This is "BugReport.CMD":

@echo off
setlocal
cls
echo []--------------------------------------------------------------------[]
echo ^| Generate Andoid Bug Report Version 11.047a (C) by Dennis Bareis 2011 ^|
echo []--------------------------------------------------------------------[]
echo.

@rem *** Find AD.EXE or abort *********************************************
set BatchFileDir=%~dp0
set AdbExe=%BatchFileDir%ADB.EXE
if exist "%AdbExe%" goto FoundAdbExe
set AdbExe=%CD%\ADB.EXE
if exist "%AdbExe%" goto FoundAdbExe
set AdbExe=
for %%f in ("AdbExe") do set AdbExe=%%~$PATH:f
if not "%AdbExe%" == "" FoundAdbExe
echo ERROR: Could not find "ADB.EXE" (have you installed it?)
echo.
echo To find ADB.EXE this script:
echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
echo (1) Looks in the same directory as the batch file ("%BatchFileDir%)
echo.
echo (2) Looks in the current directory (%CD%)
echo.
echo (3) Looks in the PATH, that is one of the following directories: %PATH%
echo.
pause
goto :EOF
:FoundAdbExe
echo USING ADB: "%AdbExe%"
echo.

@rem *** Wait for Android to connect and display its setial number *******
set LogDir=%BatchFileDir%$BugReports$
set TmpFile=%LogDir%\SerialNumber.tmp.txt
del "%TmpFile%" >nul 2>&1
md "%LogDir%" >nul 2>&1
echo Waiting for Android Device (it must have "USB Debugging" turned ON)
"%AdbExe%" wait-for-device
"%AdbExe%" get-serialno > "%TmpFile%"
set SerialNumber=
set /p SerialNumber= < "%TmpFile%"
echo.
echo Found Android Device with serial number "%SerialNumber%"
echo.
echo.

set ReportFile=%LogDir%\Android Bug Report - %SerialNumber% (%date:/=-% @ %time::=_%).txt
echo GENERATING: "%ReportFile%"
"%AdbExe%" bugreport > "%ReportFile%" 2>&1
echo Generated Bug report, opening in notepad.
start "" "%LogDir%"
start "" notepad.exe "%ReportFile%"


Saturday, 29 January 2011

SDCARD Unmounts and Android Market Installation Error, Unknown Reason 18

With my new HTC Desire HD I was getting my SDCARD auto-unmounted and with the older firmware there was no way to remount it without pulling the card out and reinserting! This was causing problems with the camera (Please insert an SD card before using the camera) and other apps mentioned the SDCARD being busy or unavailable.

I was originally thinking that it could be a hardware issue but started suspecting the apps2sd functionality in android 2.2+ (aka froyo). Or perhaps some broken "Apps2SD" functionality in some of the market application managers...

Anyway I had the phone repaired for a different reason and it came back factory reset and with the latest firmware and it was still occurring!

However now I was also having a different issue with some apps not installing with an "Installation Error" dialog containing the text "Unknown Reason-18", as this was not all apps (or even most), I suspected that these might be trying to install on the SD card so I started doing some serious Googling...

It was suggested that you run this command in a terminal "rm /mnt/secure/asec/smdl2tmp1.asec", the trouble is that requires root access. In any case this sounds like a temporary solution.

Someone suggested that the solution is to put the sdcard into a card reader and attach to your PC and remove the "\.android_secure" directory (sorry can't remember if this is hidden or not), I did this and can now install the application "memento" and sure enough if you use Android's built in "Manage Application" and click on "On SD card" tab it shows that that application did indeed install on the SDCARD by default.

Hopefully this fix also gets rid of the intermittent card unmounts. I didn't have any apps installed on the SDCARD, if I had of has some then I'd probably have attempted to move them to the phone before trying either of the above.

UPDATE: It didn't fix my unmounting issue (and I just noticed the mount option is greyed out!). Anyway it appears that this is probably a known bug in the "1.72" firmware update! I've also noticed that when the card unmounts the phone loses cell radio signal (NO SIGNAL).

Since I've had the 1.72 firmware my phone has been rebooting overnight (I know as it wakes me up every time), taking a very long time to do so yet not updating the "uptime"...

Saturday, 8 January 2011

Like the HTC Desire HD, but that's not to say everythings Rosy...

Its an Android phone and given the powerful hardware and large screen I was always going to like it and in general I do, but listed below are the things I don't like...

The Phone Itself
  1. The battery/SIM-SDCARD plastic bits are cheap as sh1t and don't feel solid like the rest of the phone.
  2. Really love the big screen. My old 3.7" LCD Milestone looks tiny now :-)
  3. CardioTrainer gives me more accurate results so I think it has a better GPS than the Milestone.
  4. The contacts (and call log etc) doesn't support Google's "custom" phone number (or other) types! This is EXTREMELY disappointing and means I always have to remember to update the contact online.
  5. The "notes" field while editing is one line high so almost impossible to edit. I'm really starting to wonder about HTC...
  6. The phone can't edit calendar events! Or at least it can't modify the start/stop dates on repeating events! Not a biggy for me as I try to do most changes from my laptop anyway.
  7. The speakers are horribly quiet. A work around for me was to use Audacity to amplify the sound (a lot) for the ringtones. Can't do that with internal ones, I have my own set in any case which I name based on function in any case ("zzCall-WORK.mp3").
  8. Average quality alarm/ring tones installed. Milestone had a way better assortment. Be nice if Google ever standardizes this.
  9. Swype never works after a reboot (button presses Ok, just won't swype)! You have to alter the input method, then alter it back!
  10. Another Swype issue is that HTC's sideways menu bar (for copy/paste etc) frequently ends up overlaying the Swype word choice menu!
  11. I gave "HTC Sense" a go but decided its mainly designed to look good while sacrificing functionality and was nowhere near as good as the "LauncherPro" I put on within the first week.
  12. The "HTC Friends" is so buggy its unusable assuming I wanted to, I don't, and it can't be disabled without turning off sense which I assume would also prevent the wanted "htcsense.com" stuff working, of course they wouldn't want to document any of this would they? It keeps popping up notifications!
  13. Been getting "SD card unexpectedly removed" notifications (Unmount card before removing to avoid data lo | ss ...). This happens intermittently and I managed to capture it in a log (partial extract below). It sometimes occurs immediately after a reboot. It requires a reboot to correct. I think this is software and suspect APPS2SD functionality (Google or HTC's fault?).
  14. I am so missing the "pure" google functionality of the Motorola Milestone. I would have stayed with Motorola except they don't supply timely updates (still on 2.1) and have locked the bootloader preventing me from updating it myself (they have forgotten who owns the phone).
  15. HTC have devolved the Android functionality, if they wish to change it then they should improve on it. Anyway Gingerbread will force them to rewrite sense (Sense 3.0) and this time do it right.
  16. The phone just died (within first month) with green/orange flashing LEDs while charging. This apparently means overheading. As the phone is cold, its a sensor issue of some type (not sure if sensor in battery or phone). For now I'm back on my "tiny" Milestone... Lets see how good MobiCare warrantees are...
  17. Battery doesn't last anywhere near long enough (when it was charging, was calibrated to HTC recommendation). You need a charger at work after charging to 100% overnight.
  18. I don't think the "turn on USB debugging" workaround improves anything for me.
I just got my wife a Samsung Galaxy Tab (nice), however out of the 3 Android phones I've used that is 3 different Google Buttons orderings with 3 different sets of symbols Drives me crazy, I keep pressing the wrong buttons, Google really need to standardize this.


The htcsense.com website

  1. If constantly forgets which country I'm in...
  2. Only once has updated my location
  3. Making it ring mostly works immediately (or once not at all)
  4. Locking the phone doesn't actually do that, it just sets a lock code but it won't immediately lock! If also takes a very long time to apply and once not until a week later!!!!


LOG of SD CARD UNMOUNT

This is a partial log with obviously unrelated messages removed (blog stuffs up formatting...):


17 V/WindowManager( 1292): Remove Window{47a8bb40 com.android.vending/com.android.vending.UninstallActivity paused=false}: mSurface=null mExiting=false isAnimating=false app-animation=null inPendingTransaction=false mDisplayFrozen=false
01-01 08:49:39.407 D/WifiService( 1292): releaseWifiLockLocked: WifiLock{NetworkLocationProvider type=2 binder=android.os.Binder@47d053a0}
01-01 08:49:39.407 D/WifiService( 1292): enable and start wifi due to updateWifiState
01-01 08:49:48.287 V/NotificationService( 1292): Battery Full, Charging
01-01 08:49:53.707 D/TelephonyRegistry( 1292): notifyDataConnection() state=0isDataConnectivityPossible()true, reason=null
01-01 08:49:53.707 D/TelephonyRegistry( 1292): broadcastDataConnectionStateChanged() state=DISCONNECTEDtypes=null, interfaceName=null
01-01 08:49:55.430 I/ActivityManager( 1292): Start proc com.htc.android.worldclock for broadcast com.htc.android.worldclock/.AlarmInitReceiver: pid=17645 uid=1000 gids={3003, 1015, 3002, 3001, 2001}
01-01 08:49:57.140 W/BackupManagerService( 1292): dataChanged but no participant pkg='com.android.providers.settings' uid=10180
01-01 08:49:58.230 I/ActivityManager( 1292): Start proc com.jonasl.gmailnotifier2 for broadcast com.jonasl.gmailnotifier2/.GmailReceiver: pid=17658 uid=10169 gids={1015}
01-01 08:49:58.490 W/InputManagerService( 1292): Window already focused, ignoring focus gain of: com.android.internal.view.IInputMethodClient$Stub$Proxy@480b76d8
01-01 08:50:00.340 I/ActivityManager( 1292): Process com.jonasl.gmailnotifier2 (pid 17658) has died.
01-01 08:50:11.541 I/ActivityManager( 1292): Starting activity: Intent { act=android.intent.action.VIEW cmp=com.android.vending/.AssetInfoActivity (has extras) }
01-01 08:50:35.620 D/WifiService( 1292): acquireWifiLockLocked: WifiLock{NetworkLocationProvider type=2 binder=android.os.Binder@47d053a0}
01-01 08:50:35.640 D/WifiService( 1292): enable and start wifi due to updateWifiState
01-01 08:50:40.660 D/WifiService( 1292): releaseWifiLockLocked: WifiLock{NetworkLocationProvider type=2 binder=android.os.Binder@47d053a0}
01-01 08:50:40.680 D/WifiService( 1292): enable and start wifi due to updateWifiState
01-01 08:50:49.570 V/WindowManager( 1292): Remove Window{47936c10 Uninstall application paused=false}: mSurface=Surface(name=Uninstall application, identity=469) mExiting=false isAnimating=false app-animation=null inPendingTransaction=false mDisplayFrozen=false
01-01 08:50:49.580 E/WindowManager( 1292): return in removeWindowLocked
01-01 08:50:49.580 W/InputManagerService( 1292): Window already focused, ignoring focus gain of: com.android.internal.view.IInputMethodClient$Stub$Proxy@47c88088
01-01 08:50:55.550 V/WindowManager( 1292): Remove Window{47a30ab0 Rate it! paused=false}: mSurface=Surface(name=Rate it!, identity=470) mExiting=false isAnimating=false app-animation=null inPendingTransaction=false mDisplayFrozen=false
01-01 08:50:55.550 E/WindowManager( 1292): return in removeWindowLocked
01-01 08:50:55.560 W/InputManagerService( 1292): Window already focused, ignoring focus gain of: com.android.internal.view.IInputMethodClient$Stub$Proxy@47a7fdd0
01-01 08:50:57.640 I/ActivityManager( 1292): Starting activity: Intent { act=android.intent.action.VIEW cmp=com.android.vending/.UninstallActivity (has extras) }
01-01 08:50:57.740 V/WindowManager( 1292): Remove Window{47a7e6f8 Uninstall application paused=false}: mSurface=Surface(name=Uninstall application, identity=471) mExiting=false isAnimating=true app-animation=com.android.server.WindowManagerService$DummyAnimation@479f9550 inPendingTransaction=true mDisplayFrozen=false
01-01 08:50:57.740 E/WindowManager( 1292): return in removeWindowLocked
01-01 08:50:57.920 I/ActivityManager( 1292): Force stopping package com.als.usagetimelines uid=10211
01-01 08:50:58.320 I/ActivityManager( 1292): Force stopping package com.als.usagetimelines uid=10211

01-01 08:50:59.210 D/DirectVolume( 1212): Volume sdcard /mnt/sdcard partition 179:33 removed
01-01 08:50:59.210 I/Vold ( 1212): Unmounting ASEC com.vp.whiteNoizzz-1 (dependant on /mnt/sdcard)
01-01 08:50:59.230 I/Vold ( 1212): Unmounting ASEC com.rovio.angrybirds-1 (dependant on /mnt/sdcard)
01-01 08:50:59.241 D/Vold ( 1212): Volume sdcard state changing 4 (Mounted) -> 5 (Unmounting)
01-01 08:50:59.310 W/MountService( 1292): getSecureContainerList() called when storage not mounted

Wednesday, 22 December 2010

Migrating from Motorola Milestone (v2.1) to HTC Desire HD (v2.2)


I have recenty bought a Samsung Galaxy Tab (for a phone+eBook) for my wife and now a
HTC Desire HD for myself from MobiCity, I could have got the phones cheaper by importing them myself from the UK, but boy are those guys fast delivering.

Anyway so far:
  • The phone is much faster as expected. Not only is the CPU faster and better, it has more memory and 2.2 runs Java programs way faster also.
  • I have installed Launcher Pro, I was going to give HTC sense a go, but quickly worked out that its meant to look good and isn't as functional. I can fit way more icons on each screen now.
  • I really like Andoid 2.2's wireless hotspot. Very handy. Set it up for WPA2 and my laptop had no trouble connecting.
  • Coming from the Milestone I was used to capacitive buttons, but the ones on the HTC don't seem to light up enough (when off power). I think my phone is pending a few updates. I'm not going to update now on as I'm on 3G (on holidays), I'm crossing my fingers...
  • The speakers on the phone are very quiet for ringtones etc, again I'm hoping an update improves things otherwise I'll try upping the volume via Audacity...
  • What is it with the button order? Google need to mandate the order of the buttons, out of 3 phones I've used I have 3 button orderings...
  • I also think that Android needs its own set of standard wallpapers, ringtones and alarms etc, its annoying to move to a new phone and not be able to set up the same ones.
  • I'm also hating setting up all the apps and settings etc, hopefully this will improve as apps can now save settings etc in the "cloud" via your Google account.

Saturday, 6 November 2010

iHate my iLuv i913/i903 BlueTooth headphone

Hi,

Just some quick comments (I use it mainly for playing podcasts from my iPod), so a mini-review:

PRO's:
  • Actually doesn't sound bad
CONS:
  • Sound breaks up every so often for a second or two (music source within a metre).
  • I use a bulldog clip to stop the headsets folding up on my head (and this makes them uncomfortable)
  • Its "noise cancelling" doesn't do that at all it simply amplifies the sound a bit, but no evidence of any cancelling effect (unlike my previous headset which was excellent).
  • Its tiny cups don't sit well on my ears.
Issues when paired with iPod via Motorola's D650 blue tooth adapter (and I'm leaning towards blaming it):
  • I need to pair the D650 with the head phones every time!
  • When I pick up a phone call, it doesn't pause the music/podcast.
Hope that helps someone decide...


Thursday, 9 September 2010

Cloud Sync Google Chrome Bookmarks with Android Phone

Hi,

As per my previous post, after losing my phone's bookmarks during a factory reset I decided to either back up my bookmarks or sync them so I installed "GoMarks for Google Bookmarks" to sync with "Google Bookmarks", this was fine except that I really wanted my links in a tree structure and Google Bookmarks only allows a single level of folders. IE 8 has also been having problems with some sites (compatibility mode on or off) so I really wanted to start using Chrome.

I have since moved to "ChromeMarks" on my phone and now use Google's "Chrome Browser" to maintain my links. I have added the Chrome extension "Bookmark Tree - Version: 0.2.3" to display the links in a "proper" tree view (and with the right options return to the same view every time).

It was easy to export the Google Bookmarks and import these into Chrome. I have set up Chrome's sync options so that I will have the same bookmarks across all computers I have running Chrome and now "ChromeMarks" allows one way sync of these (currently manually invoked) to the phone.

"ChromeMarks" doesn't display the tree structure but does allow you to view a single folder and navigate up and down the tree. It is very much early days for the application but it was good enough for me to buy.

I posted these comments on the author's blog and he was quick to respond:

  1. Font too small, configurable would be nice
  2. It would be nice to at least be able to set where it opens to avoid the "Bookmark Bar", but better to remember where it was opened last and return there
  3. ".." should sort first
  4. Some color wouldn't hurt, it would help folders stand out more for starters.
  5. Its too easy to close it when pressing back button exits, could it actually do same as ".."?



Friday, 6 August 2010

Replaced LockBot Pro with Tasker (now have security again)

Hi,

I think it was a bug in the Milestone's 2.01 firmware but for whatever reason I lost the ability to pattern unlock my phone as removing all exchange related settings and data didn't fix the issue. In any case I was getting desperate as entering PINs every single time the screen blanked was driving me crazy. I found a product called "Lockbot Pro" which basically resolved that issue and allowed for a delayed pattern unlock.

The trouble with it was that its completely unreliable and hardly ever presented the pattern unlock! No security at all! Note I don't autokill tasks :-)

Anyway a summary of pros:
  • Its pretty
  • It solved the exchange issue I had so I didn't go insane (since "solved" this with a factory reset).

And the cons:
  • It doesn't pattern lock the screen when its supposed to.
  • The first time after a restart it doesn't work. Sometimes many times after as well.
  • Depending on the update you end up with the Android Keyguard as well as the programs!
  • Most of the time the Keyguard doesn't appear either.
  • All the buttons wake the phone up!!! That plus the keyguard or pattern unlock not working a lot of times means that its easy to wake the phone (small bump or as putting hone in case) and then do something completely random.
  • No support or forum for problems or help, no FAQ.
Anyway I've now bought "Tasker" and its replaced "LockBot Pro", "Timeriffic" and it will replace other applications on my phone and generally do a better job than the task specific applications!

I based my "code" for the unlock delay on the "keyguard-off" sample in the wiki. Its not perfect (yet) but its much better and my phone has security again.

Monday, 19 July 2010

No more Motorola Phones for me!

My Motorola Milestone still hasn't been rooted due to the signed bootloader and of course without root access your phone can't be fully backed up (a google issue).

I can understand that Motorola would not want to handle phones with custom ROMS installed under warrantee however they could simply make their stock ROMS available to restore and require that the phones are returned that way.

While the OS is open, Motorola is busy closing it, I was already iffy about every buying another Motorola phone and then I read about what they have done to the Droid X!

Saturday, 17 July 2010

Backup and Sync Android Bookmarks

Since the 2.1 update for my Motorola Milestone, I have been having intermittent reboots and one of these removed my google account and it could not be added again due to another apparently well known Android bug... Anyway a factory reset later and I can see the need for backing up my bookmarks as well as the advantage of the cloud (automatic recovery).

There are a number of backup programs for book marks but most of these require you to manually invoke it (and of course remember to do it). I looked for a sync solution as as I already use "Google Bookmarks" (not really flash but at least portable) I decided to try "GoMarks for Google Bookmarks".

This doesn't integrate with the browser but does mean I don't haveto remember or worry about backing up. As most of my existing links are meant for desktops I created a "label" called "(Android Specific Pages)" and because of the brackets this will sort on top of the list of sections in the Android application.

Now I'd like to do the same thing with a "tree" like structure so I'll probably keep looking but this is a good solution for now.

Monday, 1 March 2010

Optus Blocking Android Access to Paid Apps... Surely Illegal?

Hi,

Just a warning for anyone looking at a carrier for their new Android. Keep in mind that Optus are blocking access to any paid apps in the Android Market because they are trying to set up their own (and they talk about competition).

If you have a choice you probably want a different telco.

Sunday, 17 January 2010

You must broadcast Wi-Fi SSID for Android to connect!

I believe that most people think its a good idea to disable Wi-Fi SSID broadcasting, those that disagree appear to believe you don't need to lock your house's front door if the front gate is locked.

What those that agree do is broadcast for the initial connection and then disable the broadcasting as its not required for future reconnections. Unfortunately it is on Android (at least on my 2.0 Milestone).

Wednesday, 13 January 2010

Android's Search City

Hi,

One of the things that is getting really annoying on my Android v2.0 phone is the fact that when google displays a search button this is mostly (always?) titled "Search City", this gets really confusing when searching the market or contacts but sometimes while searching the market it does search the web instead!

The search settings are under "Search City", not a single option for searching the city to be seen...

When I search contacts I'd like to see a button called "Search Contacts", when I'm searching the Market then perhaps "Market Search", "Web Search" for a web search, "City search" for a city search and for a generic search "Search"!

If you search contacts and then select one of the matched entries and then click back you are not taken back to the search results but back to the full contact list!!!!! As far as I can see it is also not possible to filter the contacts by the groups I so carefully set up, so I have to see all my work contacts etc when I'm searching for friends or family. Anyone would think Google had gone out of the search business...

Also saved market searches don't search the market but search the web! Maybe I'm going insane but can't get it to do that now... Market search is the one of the few (perhaps only?) place where search queries are remembered as "shortcuts", Rather that invoking the search immediately, I'd rather it populated the entry field allowing me to refine it, rather than the phone making me type out a near identical query again!

Anyway thats my rant for the day :-)

Sunday, 10 January 2010

The Android Market Place is way too hard to use

A lot of things in Android are very well done and others are extremely "average", the market place and its integration into the phone is one of these where the implementation is lacking...

Note that while "http://www.androlib.com/" shows whats in the market place and itself could use improvements, I'm talking about in this post is the phone and its online market place.

If you look through the market place you will see that there are some rough categories of applications, once you are in one of those you will note that:
  1. You can't sort apps (for example by # stars)
  2. You can't search that category for apps (search looks through whole market).

For a company making a lot of money out of searching, the search engine is near useless, it badly needs an advanced search and I'd like to suggest that the simple search not find matches in the user comments etc...

My Download list if not sorted in any way I've managed to work out, its just one huge list of everything (randomly ordered) I've downloaded at any time (and not in categories).

If you look at this application "Note Everything" (quite good notepad that imports palmos memos) you will see that its in the category "Applications > Productivity". Once downloaded to my phone it just gets dumped uncategorised in any way along with all the rest of the apps and games (and not even always under the same name). To put it on a home page I need to first find it, it would be better if firstly it was categories on my phone and secondly clicking the notification shouldn't start the app but "locate" it (I'm perfectly capable of clicking on it myself).

A lot of apps don't even say what they do (they list last change details) and no screen dumps. I'd like to suggest that a bit of quality control over the listings wouldn't hurt any...

Anyway I could go one but I won't :-)