Constantly refresh image with Javascript

A simple way to refresh an image in Javascript is to use a setTimeout or setInterval, however, it doesn’t take into account how long it takes to load the image, so you could end up with a situation where a user on a slow connection does not load the image in time before the next image is requested.

Binding the load event to a image element with JQuery tends to fire prematurely, so that it does not give a fair reflection on when this image is loaded.

Here is my solution (tested in Google Chrome):

<html>
<script src=”http://code.jquery.com/jquery-1.9.1.min.js”></script&gt;
<script language=”javascript”>
$(init)
function init() {
refresh();
}
function refresh() {
var strImageUrl = “http://image.captchas.net?client=demo&random=RandomZufall&&#8221; + Date.now();
var img = new Image();
img.onload = function() {
$(“#img”).attr(‘src’,strImageUrl);
refresh();
}
img.src = strImageUrl;
}
</script>
<img id=”img”>
</html>

 

 

Categories: Uncategorized

Output JSON from WordPress

Say that you wanted to read data from a MySQL database, using PHP in a Linux environment, and then wanted to connect this data with a PhoneGap application, then you need to find a way to convert the MySQL data to JSON, to provide the interface with the PhoneGap app (which is basically HTML5)

So, as an example, I wrote a PHP script that connects to the MySQL database that underlies my OpenMerchantAccount.com blog, and converts the wp_posts table to JSON

So, I wrote the following code in PHP:

<?php
$con=mysqli_connect(“localhost”,”xxxx”,”xxxxxx”,”wordpress773″);
// Check connection
if (mysqli_connect_errno())
{
echo “Failed to connect to MySQL: ” . mysqli_connect_error();
}
mysqli_set_charset($con, “utf8″);
$result = mysqli_query($con,”SELECT * FROM wp_posts where post_status=’publish'”);
$rows = array();
while($row = mysqli_fetch_array($result))
{
$rows[] = $row;
}
echo json_encode($rows);
mysqli_close($con);
?>

Which is accessable via this url: http://www.presentr.info/db2json.php

Then, using a simple PhoneGap app template, I connected it to a HTML5 webpage, which is hosted here

http://www.presentr.info/demo

*Note*: You will need to use Google Chrome to visit the above url. 

Categories: Uncategorized

Plot tweets on a map

tweetsOnMap

I wanted to do something quite simple, plot tweets live on a map, that is, as people posted tweets live on twitter, drop a pin on the map, and display the tweet in a message bubble. I’ve done that, and popped it up on a website  “http://geotweet.webtropy.com/” – It takes a few seconds to start up, but goes quickly then.

I used the twitter stream API, which is an unusual API, since once you call it, it doesn’t close the connection, just keeps pumping out data.  I used the API call https://stream.twitter.com/1/statuses/filter.json?locations=-7,55,-6,56 – now, this does require a twitter username and password, but not any fancy OAUTH authentication.

The bounding box -7,55,-6,56 is roughly the area shown in the screenshot above, but some tweets land outside of this area, you may need extra filtering if this is important to you.

I needed to write a bit of .NET that could extract one tweet at a time from the stream. Each tweet is a Json object, and they are delimited by new line chars.

public static string ReadLineFromUrl(string url)
{
string strData = “”;
var httprequest = (HttpWebRequest)WebRequest.Create(url);
httprequest.Credentials = new NetworkCredential(“your_twitter_name”, “your_twitter_password”);
var httpresponse = (HttpWebResponse)httprequest.GetResponse();
var responsestream = httpresponse.GetResponseStream();
StreamReader httpstream = new StreamReader(responsestream, Encoding.GetEncoding(“iso8859-1”));
strData = httpstream.ReadLine();
httprequest.Abort();
return strData;
}

Then, I created a page that calls this function, and writes it to screen

var strUrl = “https://stream.twitter.com/1/statuses/filter.json?locations=-7,55,-6,56&#8221;;
var strResponse = FireHose.ReadLineFromUrl(strUrl);
Response.Write(strResponse);
Response.End();

You can modify the bounding box to meet your needs.

The source code for the web page is visible through view-source, so I won’t include it here. All I did was, initialise a google map. Once the map was ready call my AJAX function above.  extract either the geo or bounding_box object from it, and plot a marker on the map at that position. Once that is done, the Ajax is called again, and so the cycle continues.

***Update***

So, after a day of testing this new site, I suddenly got hit with a “402 client error” from twitter, which is funnily described as “Enhance your calm” on Twitter’s documentation. Basically, you’re not supposed to connect and disconnect rapidly to the stream API, you are supposed to keep connected to the stream, and only reconnect if you have to.

Fair enough, but it requires quite a redesign for the code.

What you need to do, is kick off a thread from Global.asax on Application_Start like so:

protected void Application_Start(object sender, EventArgs e)
{
FireHose hose = new FireHose();
hose.Url = “https://stream.twitter.com/1/statuses/filter.json?locations=-7,55,-6,56&#8221;;
Thread t = new Thread(new ThreadStart(hose.ReadConstantlyFromUrl));
t.Start();
}

I had to modify the “FireHose” class to have a new method called ReadConstantlyFromUrl, which opens a connection, reads a line at a time for the stream, setting a public static variable, and only disconnecting on error, or if the end of the stream is reached. I also added a cool off period of a second, so that the reconnection attempts wouldn’t bunch up.

public void ReadConstantlyFromUrl()
{
for (; ; )
{
try
{
var httprequest = (HttpWebRequest)WebRequest.Create(this.Url);
httprequest.Credentials = new NetworkCredential(“twitter_account”, “your_password”);
var httpresponse = (HttpWebResponse)httprequest.GetResponse();
var responsestream = httpresponse.GetResponseStream();
StreamReader httpstream = new StreamReader(responsestream, Encoding.GetEncoding(“iso8859-1”));
for (; ; )
{
FireHose.Tweet = httpstream.ReadLine();
if (FireHose.Tweet == null) break;
}
httpstream.Close();
Thread.Sleep(1000); // Cool off period
}
catch (Exception ex)
{
string sSource = “GeoTweet”;
string sLog = “Application”;

if (!EventLog.SourceExists(sSource))
EventLog.CreateEventSource(sSource, sLog);

EventLog.WriteEntry(sSource, ex.ToString());
}
}
}

Then, of course, I had to change the Ajax handler to simply read the value of FireHose.Tweet

while (string.IsNullOrEmpty(FireHose.Tweet))
{
Thread.Sleep(100);
}
Response.Write(FireHose.Tweet);
FireHose.Tweet = “”;

The Thread.Sleep allows the Ajax handler wait until a new tweet has arrived before writing to the output stream. Do note, that if there were more than one client visiting the page at the same time, then it would be a first-come-gets-the-tweet. Which is not ideal for most situations, but ok for my test.

**Update**

Working on a solution for multi-client access, so that one client would not “steal” the tweets that should be visible to all clients, I decided to add an extra field in the Ajax called “IgnoreTweetIf”, this is set to the length of the tweet (the full data, not the text only), and the Ajax handler will not return a tweet if the length of the last tweet it has matches the length of the tweet that the client last received. On first call this “IgnoreTweetIf” is set to zero, so that any tweet is returned.

Therefore, my Ajax handler is modified as follows;

var strIgnoreTweetIf = Request.QueryString[“IgnoreTweetIf”];
var intIgnoreTweetIf = Convert.ToInt16(strIgnoreTweetIf);
while (string.IsNullOrEmpty(FireHose.Tweet) || intIgnoreTweetIf == FireHose.Tweet.Length)
{
Thread.Sleep(100);
}
Response.Write(FireHose.Tweet);

And the Ajax code is modified thus;

function ajaxLoop(ignoreTweetIf) {
$.get(“NextTweet.aspx?IgnoreTweetIf=” + ignoreTweetIf, function (data) {
handleTweet(data);
ajaxLoop(data.length);
});
}

 

Categories: Uncategorized

JQuery Mobile Drop Downs on BlackBerry 10

Categories: Uncategorized

Free VLC remote for BlackBerry

 

vlc bb

There are plenty of VLC remote apps for various platforms, but there is a simple web interface that allows any device to control VLC.

First, you have to enable the web interface, which is under View > Add interface > Web

Then, find your local ip address which is typically 192.168.0.xxx where xxx is a number between 1 and 255.  Press the windows key and R at the same time, type cmd, and then press enter

Type ipconfig into your command prompt window, and you should find your ip address.

Once this is done, open a web browser on your BlackBerry and type this ip address followed by :8080, i.e. 192.168.0.100:8080

If you get a “forbidden error” at this point then you will have to open WordPad in administrator mode,  To do this, type WordPad into the search box in windows, then right click on the WordPad icon, and select “run as administrator”. Once it has opened, open the file “C:\program files\Video Lan\VLC\Lua\http\.hosts

Then, remove the hash symbols beside the ip addresses listed under “Private addresses”, Save the file, restart VLC, ensure that the web interface is selected then try again. If this fails, remove the hash symbols besude the ip addresses listed under “world” (- some security risk here, so not recommended)

 

 

Categories: Uncategorized

Nokia Remote Device Access now includes Windows Phone 8

Categories: Uncategorized

Emulate mobile devices in chrome without extensions

mobile emulation chrome

A very simple way to emulate mobile browsers within chrome, is to press F12, then the Settings cog in the bottom right hand corner. then press “Overrides”, and you can modify the user agent, screen resolution.

Here you can also override geo location, orientation, and even preview CSS as a printer.

No extensions to install!

– Although don’t expect this to be anywhere near as authentic as using a emulator or real device. It’s a good start, that’s all.

Categories: Uncategorized

Mobile Resolutions by popularity

Mobile screen size by popularity

Mobile screen size by popularity

If you are designing an app or mobile website, for a wide variety of mobile devices then obviously you should design your app or webpage to stretch or shrink to any size, but realistically, how small or large should you go.

From a sample of 3,000 mobile users in February/March 2013 , I calculated the 10 most popular screen resolutions, and it looks like 320×480 is the most popular, with only 7% requiring screen sizes less than 480 pixels.

 

 

Categories: Uncategorized

JQM Navbar iconpos ignored – fix

Categories: Uncategorized

Enable USB debugging on Nook without Rooting

 
13-03-13-9

One of the bugbears of developing for a Nook, is that as soon as you plug the USB cable into the device,  the screen freezes, with a message saying that it is in “USB Drive mode” and not to disconnect the cable, etc.

Unfortunately, this makes it impossible to interact with your app without unplugging the USB, and therefore loosing the ability to debug the app live.

So, using the technique, of pressing the “n” key, then apps, then Volume up and the “//Library” logo (top of screen) at the same time, press Nook Color Tools and then All Settings then Development, then Check USB Debugging and uncheck Automount.

Then if you connect the Nook to your computer, (with appropriate driver installed), the USB drive screen no longer appears. Connect using ADB kill-server, ADB devices, then you can do an ADB logcat live, and see the messages fly up the screen, as you debug your app.

 

 

Here’s the output from my logcat screen, as I tried using one of my apps live on the Nook

n=false mHomePressed=false
D/WindowManager( 958): interceptKeyTi code=24 down=true repeatCount=0 keyguardOn=false mHomePressed=false
D/WindowManager( 958): interceptKeyTi code=24 down=true repeatCount=0 keyguardOn=false mHomePressed=false
D/WindowManager( 958): interceptKeyTi code=24 down=true repeatCount=0 keyguardOn=false mHomePressed=false
D/WindowManager( 958): interceptKeyTi code=24 down=true repeatCount=0 keyguardOn=false mHomePressed=false
D/WindowManager( 958): interceptKeyTi code=24 down=true repeatCount=0 keyguardOn=false mHomePressed=false
D/WindowManager( 958): interceptKeyTi code=24 down=true repeatCount=0 keyguardOn=false mHomePressed=false
D/WindowManager( 958): interceptKeyTi code=24 down=true repeatCount=0 keyguardOn=false mHomePressed=false
D/WindowManager( 958): interceptKeyTi code=24 down=true repeatCount=0 keyguardOn=false mHomePressed=false
D/WindowManager( 958): interceptKeyTi code=24 down=true repeatCount=0 keyguardOn=false mHomePressed=false
D/WindowManager( 958): interceptKeyTi code=24 down=true repeatCount=0 keyguardOn=false mHomePressed=false
I/ActivityManager( 958): Starting activity: Intent { cmp=com.bn.nook.applauncher/.jump.JumpActivity }
D/WindowManager( 958): interceptKeyTi code=24 down=true repeatCount=0 keyguardOn=false mHomePressed=false
D/WindowManager( 958): interceptKeyTi code=24 down=true repeatCount=0 keyguardOn=false mHomePressed=false
D/WindowManager( 958): interceptKeyTi code=24 down=true repeatCount=0 keyguardOn=false mHomePressed=false
D/WindowManager( 958): interceptKeyTi code=24 down=true repeatCount=0 keyguardOn=false mHomePressed=false
D/WindowManager( 958): interceptKeyTi code=24 down=true repeatCount=0 keyguardOn=false mHomePressed=false
D/WindowManager( 958): interceptKeyTi code=24 down=true repeatCount=0 keyguardOn=false mHomePressed=false
D/WindowManager( 958): interceptKeyTi code=24 down=true repeatCount=0 keyguardOn=false mHomePressed=false
I/SurfaceFlinger( 958):
I/SurfaceFlinger( 958): SurfaceFlinger::createSurface() : layer->mIdentity=9, LayerName= com.bn.nook.applauncher/com.bn.nook.applauncher.jump.JumpActivity
I/SurfaceFlinger( 958): SurfaceFlinger::createSurface() : layer->clientIndex=0, surfaceHandle->mToken=0x0
I/SurfaceFlinger( 958):
I/SurfaceFlinger( 958): SurfaceFlinger::createSurface() : layer->mIdentity=10,LayerName= com.bn.nook.applauncher/com.bn.nook.applauncher.jump.JumpActivity
I/SurfaceFlinger( 958): SurfaceFlinger::createSurface() : layer->clientIndex=1, surfaceHandle->mToken=0x1
D/WindowManager( 958): interceptKeyTi code=24 down=false repeatCount=0 keyguardOn=false mHomePressed=false
I/SurfaceFlinger( 958):
I/SurfaceFlinger( 958): SurfaceFlinger::createSurface() : layer->mIdentity=11,LayerName= DimSurface
I/SurfaceFlinger( 958): SurfaceFlinger::createSurface() : layer->clientIndex=0, surfaceHandle->mToken=0x0
D/dalvikvm( 1510): GC_EXTERNAL_ALLOC freed 1555 objects / 97664 bytes in 66ms
I/ActivityManager( 958): Displayed activity com.bn.nook.applauncher/.jump.JumpActivity: 505 ms (total 505 ms)
D/Omap3ALSA( 903): open called for devices 00000002 in mode 0…
E/ALSAControl( 903): Control ‘HandsfreeR Switch’ cannot get element info: -2
E/ALSAControl( 903): Control ‘HandsfreeL Switch’ cannot get element info: -2
E/ALSAControl( 903): Control ‘HandsfreeR Mux’ cannot get element info: -2
E/ALSAControl( 903): Control ‘HandsfreeL Mux’ cannot get element info: -2
E/ALSAControl( 903): Control ‘HeadsetR Mixer AudioR2’ cannot get element info:-2
E/ALSAControl( 903): Control ‘HeadsetL Mixer AudioL2’ cannot get element info:-2
I/Omap3ALSA( 903): Initialized ALSA PLAYBACK device default
D/dalvikvm( 1510): GC_EXTERNAL_ALLOC freed 2709 objects / 127576 bytes in 37ms
W/InputManagerService( 958): Starting input on non-focused client com.android.internal.view.IInputMethodClient$Stub$Proxy@4a2edb28 (uid=10025 pid=1265)
W/IInputConnectionWrapper( 1265): showStatusIcon on inactive InputConnection
D/dalvikvm( 1510): GC_EXTERNAL_ALLOC freed 2686 objects / 149856 bytes in 105ms
D/dalvikvm( 1510): GC_EXTERNAL_ALLOC freed 270 objects / 12872 bytes in 35ms
D/dalvikvm( 1510): GC_EXTERNAL_ALLOC freed 19 objects / 1136 bytes in 34ms
D/dalvikvm( 1510): GC_EXTERNAL_ALLOC freed 23 objects / 792 bytes in 32ms
D/dalvikvm( 1510): GC_EXTERNAL_ALLOC freed 27 objects / 1168 bytes in 31ms
D/dalvikvm( 1510): GC_EXTERNAL_ALLOC freed 40 objects / 1712 bytes in 44ms
D/dalvikvm( 1040): GC_EXPLICIT freed 690 objects / 38984 bytes in 84ms
D/WifiService( 958): ACTION_BATTERY_CHANGED pluggedType: 0
D/dalvikvm( 1092): GC_EXPLICIT freed 7998 objects / 419912 bytes in 748ms
I/dalvikvm( 958): Jit: resizing JitTable from 8192 to 16384
D/dalvikvm( 1265): GC_EXPLICIT freed 2771 objects / 256992 bytes in 98ms
I/ActivityManager( 958): Starting activity: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.benhirashima.nookcolorsettings/.NCSettings }
I/SurfaceFlinger( 958):
I/SurfaceFlinger( 958): SurfaceFlinger::createSurface() : layer->mIdentity=12,LayerName= Starting com.benhirashima.nookcolorsettings
I/SurfaceFlinger( 958): SurfaceFlinger::createSurface() : layer->clientIndex=0, surfaceHandle->mToken=0x0
I/ActivityManager( 958): Start proc com.benhirashima.nookcolorsettings for activity com.benhirashima.nookcolorsettings/.NCSettings: pid=1524 uid=10007 gids={}
I/WindowManager( 958): Setting rotation to 3, animFlags=1
I/ActivityManager( 958): Config changed: { scale=1.0 imsi=0/0 loc=en_US touch=3 keys=1/1/2 nav=1/1 orien=2(-1) layout=35 uiMode=0 seq=2}
I/SurfaceFlinger( 958):
I/SurfaceFlinger( 958): SurfaceFlinger::createSurface() : layer->mIdentity=13,LayerName= com.benhirashima.nookcolorsettings/com.benhirashima.nookcolorsettings.NCSettings
I/SurfaceFlinger( 958): SurfaceFlinger::createSurface() : layer->clientIndex=0, surfaceHandle->mToken=0x0
I/ActivityManager( 958): Displayed activity com.benhirashima.nookcolorsettings/.NCSettings: 718 ms (total 718 ms)
W/ActivityManager( 958): Unable to launch app com.google.android.apps.genie.geniewidget/10020 for broadcast Intent { act=android.appwidget.action.APPWIDGET_UPDATE cmp=com.google.android.apps.genie.geniewidget/.miniwidget.MiniWidgetProvider (has extras) }: process is bad
W/ActivityManager( 958): finishReceiver called but none active
I/ActivityManager( 958): Starting activity: Intent { act=android.intent.action.CHOOSER cmp=android/com.android.internal.app.ChooserActivity (has extras) }
I/SurfaceFlinger( 958):
I/SurfaceFlinger( 958): SurfaceFlinger::createSurface() : layer->mIdentity=14,LayerName= android/com.android.internal.app.ChooserActivity
I/SurfaceFlinger( 958): SurfaceFlinger::createSurface() : layer->clientIndex=1, surfaceHandle->mToken=0x1
D/dalvikvm( 958): GC_EXPLICIT freed 10940 objects / 689032 bytes in 124ms
I/ActivityManager( 958): Displayed activity android/com.android.internal.app.ChooserActivity: 927 ms (total 927 ms)
I/WindowManager( 958): Setting rotation to 0, animFlags=0
I/ActivityManager( 958): Config changed: { scale=1.0 imsi=0/0 loc=en_US touch=3 keys=1/1/2 nav=1/1 orien=1(-1) layout=35 uiMode=0 seq=3}
I/UsageStats( 958): Unexpected resume of android while already resumed in android
D/dalvikvm( 1524): GC_FOR_MALLOC freed 4797 objects / 301576 bytes in 97ms
I/SurfaceFlinger( 958):
I/SurfaceFlinger( 958): SurfaceFlinger::createSurface() : layer->mIdentity=15,
LayerName= android/com.android.internal.app.ChooserActivity
I/SurfaceFlinger( 958): SurfaceFlinger::createSurface() : layer->clientIndex=1, surfaceHandle->mToken=0x1
I/SurfaceFlinger( 958):
I/SurfaceFlinger( 958): SurfaceFlinger::createSurface() : layer->mIdentity=16,
LayerName= com.benhirashima.nookcolorsettings/com.benhirashima.nookcolorsettings.NCSettings
I/SurfaceFlinger( 958): SurfaceFlinger::createSurface() : layer->clientIndex=0, surfaceHandle->mToken=0x0
D/WifiService( 958): ACTION_BATTERY_CHANGED pluggedType: 0
I/ActivityManager( 958): Starting activity: Intent { act=android.intent.action.MAIN flg=0x3000000 pkg=com.android.settings cmp=com.android.settings/.DevelopmentSettings }
D/dalvikvm( 958): GC_EXPLICIT freed 2743 objects / 128840 bytes in 141ms
I/SurfaceFlinger( 958):
I/SurfaceFlinger( 958): SurfaceFlinger::createSurface() : layer->mIdentity=17,LayerName= com.android.settings/com.android.settings.DevelopmentSettings
I/SurfaceFlinger( 958): SurfaceFlinger::createSurface() : layer->clientIndex=0,
surfaceHandle->mToken=0x0
W/IInputConnectionWrapper( 1524): showStatusIcon on inactive InputConnection
I/ActivityManager( 958): Displayed activity com.android.settings/.DevelopmentSe
ttings: 720 ms (total 720 ms)
D/DevelopementSettings( 1236): Old UMSAuto status: true
D/DevelopementSettings( 1236): Dev Auto Mount Checked? false
D/DevelopementSettings( 1236): New UMSAuto status: false
D/dalvikvm( 1331): GC_EXPLICIT freed 6052 objects / 504504 bytes in 157ms
I/SurfaceFlinger( 958):
I/SurfaceFlinger( 958): SurfaceFlinger::createSurface() : layer->mIdentity=18,
LayerName= com.benhirashima.nookcolorsettings/com.benhirashima.nookcolorsettings
.NCSettings
I/SurfaceFlinger( 958): SurfaceFlinger::createSurface() : layer->clientIndex=0,
surfaceHandle->mToken=0x0
W/InputManagerService( 958): Starting input on non-focused client com.android.i
nternal.view.IInputMethodClient$Stub$Proxy@4a33bbd0 (uid=1000 pid=1236)
D/WindowManager( 958): interceptKeyTi code=4 down=true repeatCount=0 keyguardOn
=false mHomePressed=false
D/WindowManager( 958): interceptKeyTi code=4 down=false repeatCount=0 keyguardO
n=false mHomePressed=false
I/SurfaceFlinger( 958):
I/SurfaceFlinger( 958): SurfaceFlinger::createSurface() : layer->mIdentity=19,
LayerName= com.bn.nook.library/com.bn.nook.library.LibraryMainActivity
I/SurfaceFlinger( 958): SurfaceFlinger::createSurface() : layer->clientIndex=0,
surfaceHandle->mToken=0x0
D/dalvikvm( 1265): GC_FOR_MALLOC freed 7701 objects / 432968 bytes in 59ms
I/dalvikvm( 1265): Jit: resizing JitTable from 4096 to 8192
D/dalvikvm( 1236): GC_EXPLICIT freed 3797 objects / 509904 bytes in 103ms
I/DeviceManagerHandler( 1290): HandleMessage(): msg.what (8)
D/dalvikvm( 1382): GC_EXPLICIT freed 1201 objects / 75632 bytes in 75ms
I/MountService( 958): onUmsConnected(): UMS mount state [UMS_STATE_MOUNTED]
I/MountService( 958): onUmsConnected(): => all is OK; Starting UMS
W/Vold ( 899): Ignoring unknown switch ‘usb_configuration’
D/WifiService( 958): ACTION_BATTERY_CHANGED pluggedType: 0
D/dalvikvm( 1399): GC_EXPLICIT freed 1140 objects / 81360 bytes in 88ms
D/WifiService( 958): ACTION_BATTERY_CHANGED pluggedType: 0
D/dalvikvm( 1415): GC_EXPLICIT freed 2261 objects / 164816 bytes in 116ms
D/WifiService( 958): ACTION_BATTERY_CHANGED pluggedType: 0
D/WindowManager( 958): interceptKeyTi code=24 down=true repeatCount=0 keyguardO
n=false mHomePressed=false
I/SurfaceFlinger( 958):
I/SurfaceFlinger( 958): SurfaceFlinger::createSurface() : layer->mIdentity=20,
LayerName= Toast
I/SurfaceFlinger( 958): SurfaceFlinger::createSurface() : layer->clientIndex=0,
surfaceHandle->mToken=0x0
D/WindowManager( 958): interceptKeyTi code=24 down=true repeatCount=0 keyguardO
n=false mHomePressed=false
D/WindowManager( 958): interceptKeyTi code=24 down=true repeatCount=0 keyguardO
n=false mHomePressed=false
D/WindowManager( 958): interceptKeyTi code=24 down=true repeatCount=0 keyguardO
n=false mHomePressed=false
D/WindowManager( 958): interceptKeyTi code=24 down=true repeatCount=0 keyguardO
n=false mHomePressed=false
D/WindowManager( 958): interceptKeyTi code=24 down=true repeatCount=0 keyguardO
n=false mHomePressed=false
D/WindowManager( 958): interceptKeyTi code=24 down=true repeatCount=0 keyguardO
n=false mHomePressed=false
D/WindowManager( 958): interceptKeyTi code=24 down=true repeatCount=0 keyguardO
n=false mHomePressed=false
D/WindowManager( 958): interceptKeyTi code=24 down=true repeatCount=0 keyguardO
n=false mHomePressed=false
D/WindowManager( 958): interceptKeyTi code=24 down=true repeatCount=0 keyguardO
n=false mHomePressed=false
I/ActivityManager( 958): Starting activity: Intent { cmp=com.bn.nook.applaunche
r/.jump.JumpActivity }
D/WindowManager( 958): interceptKeyTi code=24 down=true repeatCount=0 keyguardO
n=false mHomePressed=false
I/SurfaceFlinger( 958):
I/SurfaceFlinger( 958): SurfaceFlinger::createSurface() : layer->mIdentity=21,
LayerName= com.bn.nook.applauncher/com.bn.nook.applauncher.jump.JumpActivity
I/SurfaceFlinger( 958): SurfaceFlinger::createSurface() : layer->clientIndex=0,
surfaceHandle->mToken=0x0
D/WindowManager( 958): interceptKeyTi code=24 down=true repeatCount=0 keyguardO
n=false mHomePressed=false
D/WindowManager( 958): interceptKeyTi code=24 down=true repeatCount=0 keyguardO
n=false mHomePressed=false
D/WindowManager( 958): interceptKeyTi code=24 down=true repeatCount=0 keyguardO
n=false mHomePressed=false
D/WindowManager( 958): interceptKeyTi code=24 down=true repeatCount=0 keyguardO
n=false mHomePressed=false
D/WindowManager( 958): interceptKeyTi code=24 down=false repeatCount=0 keyguard
On=false mHomePressed=false
W/InputManagerService( 958): Starting input on non-focused client com.android.i
nternal.view.IInputMethodClient$Stub$Proxy@4a2edb28 (uid=10025 pid=1265)
I/ActivityManager( 958): Displayed activity com.bn.nook.applauncher/.jump.JumpA
ctivity: 445 ms (total 445 ms)
D/dalvikvm( 1092): GC_EXPLICIT freed 3941 objects / 187536 bytes in 100ms
I/ActivityManager( 958): Starting activity: Intent { act=android.intent.action.
MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.openmerchanta
ccount.internetradio/.App }
I/SurfaceFlinger( 958):
I/SurfaceFlinger( 958): SurfaceFlinger::createSurface() : layer->mIdentity=22,
LayerName= Starting com.openmerchantaccount.internetradio
I/SurfaceFlinger( 958): SurfaceFlinger::createSurface() : layer->clientIndex=0,
surfaceHandle->mToken=0x0
I/ActivityManager( 958): Start proc com.openmerchantaccount.internetradio for a
ctivity com.openmerchantaccount.internetradio/.App: pid=1542 uid=10060 gids={100
6, 3003, 1015}
D/dalvikvm( 902): GC_EXPLICIT freed 277 objects / 10528 bytes in 200ms
D/dalvikvm( 902): GC_EXPLICIT freed 42 objects / 1832 bytes in 80ms
I/System.out( 1542): loadUrl(file:///android_asset/www/index.html)
I/System.out( 1542): url=file:///android_asset/www/index.html baseUrl=file:///an
droid_asset/www
D/dalvikvm( 902): GC_EXPLICIT freed 2 objects / 64 bytes in 72ms
I/SurfaceFlinger( 958):
I/SurfaceFlinger( 958): SurfaceFlinger::createSurface() : layer->mIdentity=23,
LayerName= com.openmerchantaccount.internetradio/com.openmerchantaccount.interne
tradio.App
I/SurfaceFlinger( 958): SurfaceFlinger::createSurface() : layer->clientIndex=0,
surfaceHandle->mToken=0x0
W/InputManagerService( 958): Starting input on non-focused client com.android.i
nternal.view.IInputMethodClient$Stub$Proxy@4a2ee150 (uid=10051 pid=1510)
I/ActivityManager( 958): Displayed activity com.openmerchantaccount.internetrad
io/.App: 763 ms (total 763 ms)
D/dalvikvm( 1510): GC_EXPLICIT freed 1174 objects / 58456 bytes in 94ms
D/dalvikvm( 1265): GC_EXPLICIT freed 3007 objects / 212752 bytes in 116ms
D/WifiService( 958): ACTION_BATTERY_CHANGED pluggedType: 0
D/WifiService( 958): ACTION_BATTERY_CHANGED pluggedType: 0
D/WifiService( 958): ACTION_BATTERY_CHANGED pluggedType: 0
D/WifiService( 958): ACTION_BATTERY_CHANGED pluggedType: 0
I/power ( 958): *** set_screen_state 0
E/SurfaceFlinger( 958): About to give-up screen, flinger = 0x134968
E/SurfaceFlinger( 958): Waiting on mBarrier…
E/SurfaceFlinger( 958): Woke up!
D/WifiService( 958): ACTION_SCREEN_OFF
D/WifiService( 958): setting ACTION_DEVICE_IDLE timer for 900000ms
D/DeviceManagerBroadcastReceiver( 1290): action (android.intent.action.SCREEN_OF
F)
D/WifiService( 958): acquireWifiLockLocked: WifiLock{DeviceManagerService type=
1 binder=android.os.BinderProxy@4a3d9c38}
E/DeviceInfo( 1290): Calling deviceinfo.getDeviceId
I/DeviceManagerHandler( 1290): HandleMessage(): msg.what (102)
I/DeviceManagerHandler( 1290): User is not using the device!
D/DeviceManagerHandler( 1290): HandleMessage(): Not ready to install!
D/WifiService( 958): releaseWifiLockLocked: WifiLock{DeviceManagerService type=
1 binder=android.os.BinderProxy@4a3d9c38}
D/StatusBar( 958): DISABLE_EXPAND: yes
D/StatusBar( 958): DISABLE_NOTIFICATION_ICONS: yes
I/SurfaceFlinger( 958):
I/SurfaceFlinger( 958): SurfaceFlinger::createSurface() : layer->mIdentity=24,
LayerName= Keyguard
I/SurfaceFlinger( 958): SurfaceFlinger::createSurface() : layer->clientIndex=0,
surfaceHandle->mToken=0x0
D/GoogleLoginService( 1109): onBind: Intent { act=android.accounts.AccountAuthen
ticator cmp=com.google.android.gsf/.loginservice.GoogleLoginService }
D/dalvikvm( 1109): GC_EXPLICIT freed 3749 objects / 185400 bytes in 87ms
D/dalvikvm( 1306): GC_EXPLICIT freed 2694 objects / 146856 bytes in 117ms
D/WifiService( 958): ACTION_BATTERY_CHANGED pluggedType: 0
D/dalvikvm( 1236): GC_EXPLICIT freed 590 objects / 36328 bytes in 81ms
E/TalkProvider( 1109): replaceContactWithContactId: contactId==0!!! fiach.reid@g
mail.com, acct=1
E/TalkProvider( 1109): insert presence failed for account=1 username=fiach.reid@
gmail.com client_type=2 status= priority=0 mode=4
D/WifiService( 958): ACTION_BATTERY_CHANGED pluggedType: 0
D/WifiService( 958): ACTION_BATTERY_CHANGED pluggedType: 0

Categories: Uncategorized