Posts Tagged ‘Java’
Google Android Phone Kogan Agora delayed?
Probably a stale news for most of you, the touted second Google Android Phone on the market, Kogan Agora product has been canceled despite having received huge pre-orders. The official statement from Kogan Technologies website states that the Kogan Agora release is delayed indefinitely citing technical issues regarding is screen size and resolution.
Kogan Agora, estimated to be available by Christmas 2008, might not even be ready by this year (2009). Customer who pre-ordered Kogan is being refunded as this article were written.

Its a pity to see such affordable Google Android phone to be delayed indefinitely, while there are a lot of phone manufacturers behind Open Handset Alliance (OHA, the organization that backed Android), we have yet to see other Google Android phone surfaces besides HTC manufactured T-Mobile G1.
As for my personal opinion, I don’t think Android platform is worth investing in right now since the only supported Android phone in the market is the SIM-locked T-Mobile, and although there has been news that Motorola, Huawei and Sony Ericsson are preparing to release Android phone, I don’t think I will give in much hope for Android until I’ve seen on the shelf of my local mobile phone store (SIM-unlocked, just like normal phones that is)
Primosync: Synchronize Google Calendar with Mobile Phone

This week, I’ve tried Primosync, a JavaME application which allows you to synchronize your Calendar, Events and activities with Google Calendar.
Primosync is compatible with mobile phone which supports JavaME JSR-75 PIM API, a feature that becoming common in latest modern phones.
Advantages of syncing phone calendar with Google Calendar :
- You will be able to access your event, activities and reminders anywhere with internet connection
- Your events and reminder will be more portable across various phone models as you can sync it with Google Calendar to update your Calendar
- Easier to keep track of your reminder and events
- As a backup measure in case if your mobile phone is stolen or lost
You can download it from Primosync Google Code project website (yes it is open source!) or from Primosync.mobi download site (mobile phone friendly). Available in 3 versions (Blackberry, JavaME Signed, JavaME Unsigned), for some reasons, I was unable to install the Signed version of Primosync in my E71. So I figure the Unsigned version might work in more phones.
So lets start syncing!
Tags: calendar, j2me, Java, javame, jsr-75, mobile, mobile phone, PDA, sync, synchronization, synchronize
I bought a new phone – Nokia E71
I know I’ve been slacking lately on my post.. but hey, I got myself a new phone – The Nokia E71!
Phones model and features are getting diverse now and I’ve noticed that its getting harder and harder to choose a phone that really suits my needs. For example, one feature found on Phone A isnt necessarily can be found on Phone B.
So it took me a while to replace my good old 6630 that has been stolen few months before. But hey, I’m back on my feet now.
Among the key feature that attract me to buy this phone are :
- Location API support (JSR-179) with built in GPS receiver
- QWERTY keyboard
- Ease of handling, my hands a bit slippy on its sister’s phone E66
- Battery last longer
- Hot swappable micro-sd card
- More than adequate internal memory
- Supports WiFi
\
The only drawback that I could think of this phone is its camera that is not as good as the N95,N96 series phone. But I can still live with that since I rarely use the camera anyway.
Other additional feature
The phone comes with Advance Call Manager and Multi Scanner free of charge, making it easier to filter out unwanted call and to manage phone blacklist.
Multi Scanner allows you to take a photo of name card and automatically store important information (Name, Phone Number, Address, Company’s Name, Fax Number) right into the phone.
I hope I can be more productive at updating this blog and producing new mobile applications with this phone.
Cool J2ME Game Demo – Opposite Lock
Here’s a video clip from the Grand Prize winner of Java Mobile Application Video Contest organized by Sun.
The demo feature a Mobile Java (j2me) car racing game called Opposite Lock. Enjoy the video.
[coolplayer width="425" height="360" autoplay="0" loop="0" charset="utf-8" download="1" mediatype=""]
J2ME Opposite Lock Game
[/coolplayer]
You can download and buy Opposite Lock from clickgamer.com
Download J2ME WheelItem CustomItem
This is an example of J2ME / JavaME CustomItem called WheelItem. It does nothing beside showing a spinning wheel on the phone screen. WheelItem is a perfect candidate to be displayed on a wait form screen replacing Gauge class while your application is performing lengthy operating.
WheelItem Screenshot
-
import javax.microedition.midlet.*;
-
import javax.microedition.lcdui.*;
-
import java.util.*;
-
-
public class WheelItem extends CustomItem
-
{
-
private int mCount,mMaximum;
-
private int mInterval;
-
private int mWidth,mHeight,mX,mY,mRadius;
-
private String mMessage;
-
-
{
-
super(title);
-
mCount=0;
-
mMaximum = 36;
-
mInterval = 100;
-
-
public void run() {
-
mCount = (mCount+1) % mMaximum;
-
repaint();
-
}
-
};
-
timer.schedule(task,0,mInterval);
-
}
-
{
-
mMessage = string;
-
repaint();
-
}
-
-
mWidth = iWidth;
-
mHeight = iHeight;
-
int halfWidth = mWidth/2;
-
int halfHeight = mHeight/2;
-
-
mX = halfWidth - mRadius/2;
-
mY = halfHeight - mRadius/2;
-
-
int theta = -(mCount*360/mMaximum);
-
-
g.setColor(255,255,255);
-
g.fillRect(0,0,mWidth,mHeight);
-
g.setColor(0,0,0);
-
g.drawArc(mX,mY,mRadius,mRadius,0,360);
-
g.fillArc(mX,mY,mRadius,mRadius,theta+90,90);
-
g.fillArc(mX,mY,mRadius,mRadius,theta+270,90);
-
-
if (mMessage !=null)
-
{
-
}
-
}
-
public int getMinContentWidth() { return 80; }
-
public int getMinContentHeight() { return 80; }
-
public int getPrefContentWidth(int width) {return getMinContentWidth();}
-
public int getPrefContentHeight(int height) {return getMinContentHeight();}
-
}
Download example application with WheelItem source : WaitFormDemo.zip
Ported (rather poorly) from Wheel canvas written by Jonathan Knudsen from his article - Networking, User Experiences and Threads.
Any suggestions or improvements are welcomed!
iPhoneCanvas – Fancy List component class for J2ME
I found a really nice but simple to use fancy list chooser class that emulates an iPhone display. The class requires MIDP 2.0 supported phones and can replace the default and boring List chooser class into a stunning, smooth scrolling graphical menu (includes reflections) for your users to see
Here's example screenshot of iPhoneCanvas demo in action :
These menu icons are generated from flat and boring thumbnails like these :


Download
iPhoneCanvas is licensed under the GNU General Public License and can be downloaded from listchooser Google Code project page
Demo
The iPhoneCanvas demo featured in above screenshot can be downloaded here - fancylist.jar, fancylist.zip (demo source code)
Please submit bug reports or suggestions at Google Code listchooser page
How to generate Random Numbers in J2ME application
One of the popular question asked in this blog is ways to generate random numbers in J2ME application.
As most people probably realized, the JavaME CLDC does not include the Math.Random class to generate random numbers. However one can generate a series of random numbers in JavaME/J2ME application by using the included java.util.Random class.

Here's a sample usage
The sample code above will produce a random floating-point number between 0..100 (exclusive)
Here's the source code for the full Random Number Demo application : RandomDemo.java,

