• Home
  • About
  • Contact Me
  • Projects
  • Post Categories

    • Android
    • Coding
    • Gadgets
    • gaming
    • Gaming
    • Life
    • Mobile
    • Reading
    • Web
  • Archives

    • August 2021 (1)
    • May 2021 (1)
    • January 2021 (1)
    • October 2020 (1)
    • February 2020 (1)
    • November 2019 (1)
    • April 2019 (1)
    • February 2019 (1)
    • November 2018 (1)
    • October 2018 (1)
    • May 2018 (1)
    • November 2017 (1)
    • January 2017 (1)
    • September 2016 (1)
    • January 2016 (1)
    • November 2015 (1)
    • February 2015 (1)
    • January 2015 (1)
    • December 2014 (2)
    • September 2014 (1)
    • March 2014 (1)
    • January 2012 (1)
    • September 2011 (1)
    • May 2011 (1)
    • April 2011 (1)
    • March 2011 (3)
    • February 2011 (2)
    • January 2011 (4)
    • December 2010 (3)
    • November 2010 (5)
  • Projects

    • SudoTape [Android]
    • CameraTest [Android]
  • What am I interested in?

    • @XboxGamePassPC welp, 15 hours down the drain. PC gamepass just upgraded my game and in the process deleted all my… https://t.co/Nojurp9OLv 4 years ago

    • Enter for a chance to win an incredible ASUS ZenFone 6 smartphone! https://t.co/8gLeZuw0xS 4 years ago

    • #LVLUP with a @NVIDIAGeForce powered one of a kind Custom Anthem PC by @CYBERPOWERPC @DIGITALSTORMPC @MAINGEAR and… https://t.co/lILFR29dBb 4 years ago

    • Yeah, no 4 years ago

    • RT @Fanatical: Our huge Summer Sale contest is here and you can win a PC Build worth $1500! Enter here: https://t.co/qjZtxOPLfA https://t.c… 5 years ago

    Powered by HL Twitter

Nov 25

… … Hello? Is this thing on? …

Android, Coding 6 Comments »

So I finally got back into developing some Android code, I have some projects in mind but since I”m a lazy mofo I won’t talk about them until I feel like they’re turning out how I want.  Typically when I start a new project I think of splitting the key functionality of the application into pieces then start doing some reading and googling to see how to do those pieces.  Then it becomes a matter of taking those pieces and putting them together.

I did some reading on how to do multi-touch.  Pinch to zoom, drag, that sort of thing.  I downloaded the latest beta for JetBrain’s IntelliJ because I knew they had the Android framework included, and I had used their framework in an earlier version (8.x) and it worked fine with the emulator, albeit slow.

I found an interesting article online regarding how to do multi-touch and proceeded to copy/paste some of the code into my project.  After getting everything built properly I proceeded to run my app.  For some reason my app wasn’t showing up.  I know the emulator is slow but damn..  I started looking through IntelliJ’s logs to see if I was missing something and the log says .. my app is running.   WTF?!  Well it turns out that I had my phone plugged in and the Android SDK connector (ADB) automatically uploaded my app to the phone.  I turn the screen on and there it is.  Funny that I totally forgot that the phone was plugged in and that I had USB debugging turned on by default.  Even more exciting was that the process was instant, no more waiting 5 minutes for the emulator to start.  Fantastic stuff.

I found this interesting post on another Android developer’s website (Steven Osborn):

Android 2.2 isUserAMonkey() check

Per the documentation: Returns “true” if the user interface is currently being messed with by a monkey.

There is another gem in the Log class, they’ve added a new log level ‘wtf‘ which in this case means “What a Terrible Failure”

Great stuff, pretty easy to tell the Google developers are geeks like myself, I love shit like that in source code, makes writing stuff a lot more fun.

Nov 18

How brave are you?

Android 9 Comments »

So last week after much complaining from myself to my wife I was able to get a phone, as my earlier posts suggest.  I bought a used phone from Kijiji (which is popular in Canada). I liked the idea of buying a phone used for several reasons:

  1. Someone else pays the tax
  2. Usually they have bought accessories that they’ll give away since they’re useless without the phone
  3. Lets the buyer choose the service provider choose who will give the best price for cell phone usage

The issue here was that the phone I was interested in was the Samsung Galaxy S.  Which on paper looks great but online has questionable reviews regarding Samsung’s terrible implementation of AndroidOS and a bad reputation regarding supporting their devices after they’ve been sold.  Samsung typically has the mentality of “sell it and then we’ll drop support and recommend people buy are new product”… Case in point, with the SGS (Galaxy S) they’ve been promising the latest OS upgrade (v2.2 Froyo) since September yet most of the markets still have NOT gotten the update.

I bought the device mostly due to the hacking community.  Typically when you buy a mobile or PDA type device you want to make sure that it will be supported.  I figured that since Samsung has sold SGS devices in over 120 countries and on every major provider in North America the hacking comunity would pick up for Samsung’s lack of support, with an audience of that many countries/providers I figured that the device would have a pretty big following.

For the most part I was right, however I underestimated how important the basic communication and open-sourced-ness of manufacturer->community is.  Samsung hasn’t been very forthcoming on their open source code for their implementation of the Android OS, and from what I read a lot of their code isn’t written very well.  This doesn’t mean I have buyers remorse, just that I underestimated how important the manufacturer’s involvement is.

Nonetheless I had the device for a little while and was curious how difficult it would be use use a hacked ROM on my phone.  The device came with 2.1 and I wanted to try 2.2.  There were enough interesting addons to 2.2 that I felt compelled to hack the device and see if I could get 2.2 running on it.  My first dabbles in this idea were to root the phone, the previous owner had unlocked it so the ‘seal’ had already been broken I figured it was worth trying to root the device. Rooting an Android phone is similar to ‘jailbreaking’ your iPhone/iPod.  It opens up the device’s capability beyond what the manufacturer had designed/planned for it to do.  This is typically dangerous because often if you’re not careful you can ‘brick’ or permanently damage the device beyond using it.  This is made even more dangerous for me because I bought it used without warranty so if I ‘bricked’ my device I would have a difficult type trying to get the original seller to fix it or replace it.  Still, being the geek that I am I figured it was worth the try.

Now the SGS has some issues, my biggest concern was that I would run into these issues before I even got very far in the hacking process.. that I would hit the issues and get confused if it was my hacking or the issues that caused me to ‘brick‘ my device.  I threw caution to the wind and decided to proceed with applying a new ROM that would upgrade my device to 2.2 OS.  Everything went well, sometimes I can follow instructions and the device started up with 2.2 and I started reinstalling my software that did not make the initial transition from 2.1 -> 2.2.  On a whim though I decided to try using the phone and it worked except I could not accept incoming calls.  I figured this wasn’t an issue and felt the ‘hacking community’ would help me out but after 12 hours of reading, researching, questioning and debating I found that there was no way I could fix the device.  I was frustrated because everything was working perfectly, GPS connection was fantastic, SMS worked, battery life seemed great, I enjoyed the new 2.2 features around Flash, etc, but without incoming calls the device lost a lot of it’s functionality.  I was unsure how to go back to the old 2.1 and I didn’t know how to fix what I had for 2.2.  I was disappointed that I had semi-bricked my phone and no idea how to fix it.

On a whim I decided to try another ROM and magically it worked.  The phone restarted, quickly I retried incoming calls.. WORKED, outgoing calls WORKS, SMS, WORKS, GPS WORKS.  The battery life isn’t as good as the last ROM but it’s usable and lets me enjoy the phone for now until a new ROM comes out that has better community support.  I learned a lot in the process, not only how a lot on how to hack Android devices but also that persistence pays off.

My device started out looking like this:

TouchWiz 3.0, starting launch/ROM for SGS

Starting ROM

And ended up finally looking like this:

What my current ROM looks like.

Nov 11

Taking infrastructure for granted

Coding No Comments »

When working on my own applications at home I realize how much infrastructure code I take for granted from my full time job.  For example, my application at home needed to display a table of data.  Java tables by themselves are pretty ugly, they work but they look very boring, offer very little in ways of formatting and require you to reinvent the wheel in order to get some nice functionality behind them.

I figured “surely there must be some open source tools/code that I can use”.  Well I stumbled upon only ONE that actually seems pretty decent.  Objectplanet has a decent table but if you dig around you can see that you need to buy a commerical license to get full access to it.  And the price for that?  A cool $1000.  This is a reasonable price really considering the amount of work to write a full-fledged table kit on your own but MAN.  We have our own set of table tools in my full-time job that walks circles around Objectplanet’s offering that I never think about when working but in reality it alone would be worth thousands of dollars and it’s such a tiny piece of all the software we use/have developed.

The same goes for a wizard framework.  Again it was one of the first things I helped write when I moved over from MFC->Java back in 2002 in my full time job.  Looking around now there are very few examples/working prototype code that I imagine something I wrote as a requirement at work would likely be worth a lot of money out in the wild.

I’m not really sure why I thought about these things when I worked on native code type applications.  Perhaps because the controls in Java are so bare-bones that to get something really usable/pretty you have to put a lot of effort into it, whereas for win32/MFC type applications the base controls will do 80% of what you really get done and that last 20% is a luxury that most people won’t miss.

Doesn’t really make me want to go back to MFC though.  My skills on Windows development now are probably so far behind now I doubt I’d even remember where to begin.

Nov 09

Hello Android

Android, Web No Comments »

Just playing with the Android version of WordPress..
Very cool!

I am reminded though on how difficult it is to write more than a few snippets on a mobile device.  But the idea is sound, you could use your phone at a spur of the moment to jot down notes for a posting, then when you got to a real keyboard finish the post using your notes as a guide for your thoughts.

Either way I was impressed that WordPress interfaced with my site that I set up.

  1. logged onto siteground, added WordPress (2 minutes)
  2. Used Appbrain, found and installed WordPress app (30 seconds)
  3. Attempted to launch WordPress on phone, got failure message with enough info in the message on what is broken on my site
  4. logged into admin section of WordPress on my site found flag that corresponded to the message on the phone.. click and save flag
  5. Retry on phone, works!

Great stuff.  This is why I’m so interested in mobile development.  Gone are the days where the PDA was so isolated from the PC and the networking of it was for the most part an afterthought.

Doesn’t make my wife any more happy on the cost of buying a phone and a data plan but exciting enough for me to put up with the complaining.

Nov 08

Switched hosts

Web No Comments »

Switched my domain hosting from http://www.xlinternet.ca to http://www.siteground.com

XLInternet was not supporting some of the email options I wanted and didn’t seem to be keeping up with technology (my Joomla installation there was some hybrid 1.0 1.5 version that wasn’t even supported).

It was a decent host where I learned quite a bit about web development, PHP, OSCommerce, Joomla and a number of CMS type systems.  Siteground was hosting my wife’s site so it made sense to have them host mine as well.

As usual though, I have some things to do to make this page look less like shit.  I got rid of Joomla as it was probably overkill for how lazy I am when it comes to writing posts.  I switched to WordPress which seems to better suited for an individual.

Proudly powered by WordPress.

cssandhtml