<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>developer.blueid.de</title>
	<atom:link href="http://developer.blueid.de/feed/" rel="self" type="application/rss+xml" />
	<link>http://developer.blueid.de</link>
	<description>BlueID Developer Blog</description>
	<lastBuildDate>Tue, 02 Mar 2010 10:36:40 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>On-Device Debugging</title>
		<link>http://developer.blueid.de/2010/03/02/ondevicedebugging/</link>
		<comments>http://developer.blueid.de/2010/03/02/ondevicedebugging/#comments</comments>
		<pubDate>Tue, 02 Mar 2010 10:36:40 +0000</pubDate>
		<dc:creator>asc</dc:creator>
				<category><![CDATA[Allgemein]]></category>

		<guid isPermaLink="false">http://developer.blueid.de/?p=222</guid>
		<description><![CDATA[S40 When you connect you mobile phone to your PC via USB, you can open a serial connection to the device with a terminal application (Putty for Windows, ZTerm for MacOS) and see the log messages. This method is discussed in the Nokia forum. S60 The S60 platform offers advanced debugging solutions. The S60 SDK [...]]]></description>
			<content:encoded><![CDATA[<p>S40</p>
<p>When you connect you mobile phone to your PC via USB, you can open a serial connection to the device with a terminal application (Putty for Windows, ZTerm for MacOS) and see the log messages. This method is discussed in the <a href="http://blogs.forum.nokia.com/blog/hartti-suomelas-forum-nokia-blog/2006/10/18/midlets-system.out-and-series-40-phones">Nokia forum</a>.</p>
<p>S60</p>
<p>The S60 platform offers advanced debugging solutions. The S60 SDK provides a midlet that you have to start before you application and forwards all interesting informations like log messages, cpu and memory consumption to a application on your PC. The mobile phone can be connected via USB, Bluetooth or WLAN. This method is described in the <a href="http://library.forum.nokia.com/index.jsp?topic=/Java_Developers_Library/GUID-072EB8C4-4731-40D3-97A9-3E629E87700A.html">Nokia forum</a>.</p>
<p>Android</p>
<p>The Android SDK offers a mighty debugging solution with the Android Debugging Bridge (ADB). See the <a href="http://developer.android.com/guide/developing/tools/adb.html">documentation</a>.</p>
<p align="left"><a class="tt" href="http://twitter.com/home/?status=On-Device+Debugging+http://aawk4.th8.us" title="Post to Twitter"><img class="nothumb" src="http://developer.blueid.de/wp-content/plugins/tweet-this/icons/tt-twitter.png" alt="Post to Twitter" /></a> <a class="tt" href="http://twitter.com/home/?status=On-Device+Debugging+http://aawk4.th8.us" title="Post to Twitter">Tweet This Post</a></p>]]></content:encoded>
			<wfw:commentRss>http://developer.blueid.de/2010/03/02/ondevicedebugging/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Freikarten für die CeBIT 2010</title>
		<link>http://developer.blueid.de/2010/02/18/cebit201/</link>
		<comments>http://developer.blueid.de/2010/02/18/cebit201/#comments</comments>
		<pubDate>Thu, 18 Feb 2010 15:07:48 +0000</pubDate>
		<dc:creator>asc</dc:creator>
				<category><![CDATA[Allgemein]]></category>

		<guid isPermaLink="false">http://developer.blueid.de/?p=215</guid>
		<description><![CDATA[Wir verlosen unter unseren Fans auf Facebook bzw. unseren Followern auf Twitter jeweils 25 Freitickets für die CeBIT 2010. Die Gewinner werden am Freitag, den 26. Februar gezogen. Dieses Jahr sind wir auf der CeBIT im Microsoft Partnerbereich in der Halle 4 vertreten. Tweet This Post]]></description>
			<content:encoded><![CDATA[<p>Wir verlosen unter unseren <a href="http://www.facebook.com/pages/BlueID/197702414283">Fans auf Facebook</a> bzw. unseren <a href="http://twitter.com/blueid_de">Followern auf Twitter</a> jeweils 25 Freitickets für die CeBIT 2010. Die Gewinner werden am Freitag, den 26. Februar gezogen.</p>
<p>Dieses Jahr sind wir auf der CeBIT im Microsoft Partnerbereich in der Halle 4 vertreten.</p>
<p align="left"><a class="tt" href="http://twitter.com/home/?status=Freikarten+f%C3%BCr+die+CeBIT+2010+http://qrbsr.th8.us" title="Post to Twitter"><img class="nothumb" src="http://developer.blueid.de/wp-content/plugins/tweet-this/icons/tt-twitter.png" alt="Post to Twitter" /></a> <a class="tt" href="http://twitter.com/home/?status=Freikarten+f%C3%BCr+die+CeBIT+2010+http://qrbsr.th8.us" title="Post to Twitter">Tweet This Post</a></p>]]></content:encoded>
			<wfw:commentRss>http://developer.blueid.de/2010/02/18/cebit201/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Top 10 Software Project Management Books</title>
		<link>http://developer.blueid.de/2010/01/20/top-10-software-project-management-books/</link>
		<comments>http://developer.blueid.de/2010/01/20/top-10-software-project-management-books/#comments</comments>
		<pubDate>Wed, 20 Jan 2010 16:01:13 +0000</pubDate>
		<dc:creator>asc</dc:creator>
				<category><![CDATA[Allgemein]]></category>

		<guid isPermaLink="false">http://developer.blueid.de/?p=203</guid>
		<description><![CDATA[Here is my personal Top 10 list of books about software project management: Making Things Happen The Deadline Software Project Survival Guide Peopleware Applied Software Project Management Death March Manage It! Waltzing With Bears Behind Closed Doors: Secrets of Great Management Manage Your Project Portfolio Tweet This Post]]></description>
			<content:encoded><![CDATA[<p>Here is my personal Top 10 list of books about software project management:</p>
<ol>
<li> <a href="http://www.amazon.com/gp/product/0596517718?ie=UTF8&#038;tag=bl057-20&#038;linkCode=as2&#038;camp=1789&#038;creative=9325&#038;creativeASIN=0596517718" target="_blank"><img src="http://rcm-images.amazon.com/images/I/41DfDNBTuHL._SL110_.jpg" width="70" height="80" alt="" align="middle" /> Making Things Happen</a></li>
<li> <a href="http://www.amazon.com/gp/product/0932633390?ie=UTF8&#038;tag=bl057-20&#038;linkCode=as2&#038;camp=1789&#038;creative=9325&#038;creativeASIN=0932633390" target="_blank"><img src="http://rcm-images.amazon.com/images/I/51NNN85FKKL._SL110_.jpg"  width="70" height="80" alt="" align="middle" /> The Deadline</a></li>
<li> <a href="http://www.amazon.com/gp/product/1572316217?ie=UTF8&#038;tag=bl057-20&#038;linkCode=as2&#038;camp=1789&#038;creative=9325&#038;creativeASIN=1572316217" target="_blank"><img src="http://rcm-images.amazon.com/images/I/51xIR1HzASL._SL110_.jpg"  width="70" height="80" alt="" align="middle" /> Software Project Survival Guide </a></li>
<li> <a href="http://www.amazon.com/gp/product/0932633439?ie=UTF8&#038;tag=bl057-20&#038;linkCode=as2&#038;camp=1789&#038;creative=9325&#038;creativeASIN=0932633439" target="_blank"><img src="http://rcm-images.amazon.com/images/I/51MlUgcSICL._SL110_.jpg"  width="70" height="80" alt="" align="middle" />Peopleware</a></li>
<li> <a href="http://www.amazon.com/gp/product/0596009488?ie=UTF8&#038;tag=bl057-20&#038;linkCode=as2&#038;camp=1789&#038;creative=9325&#038;creativeASIN=0596009488" target="_blank"><img src="http://rcm-images.amazon.com/images/I/41ZJtDOChyL._SL110_.jpg"  width="70" height="80" alt="" align="middle" />Applied Software Project Management </a></li>
<li> <a href="http://www.amazon.com/gp/product/013143635X?ie=UTF8&#038;tag=bl057-20&#038;linkCode=as2&#038;camp=1789&#038;creative=9325&#038;creativeASIN=013143635X" target="_blank"><img src="http://rcm-images.amazon.com/images/I/51Jo6moOzIL._SL110_.jpg"  width="70" height="80" alt="" align="middle" /> Death March</a></li>
<li> <a href="http://www.amazon.com/gp/product/0978739248?ie=UTF8&#038;tag=bl057-20&#038;linkCode=as2&#038;camp=1789&#038;creative=9325&#038;creativeASIN=0978739248" target="_blank"><img src="http://rcm-images.amazon.com/images/I/51HrNeeUEnL._SL110_.jpg"  width="70" height="80" alt="" align="middle" />Manage It! </a></li>
<li> <a href="http://www.amazon.com/gp/product/0932633609?ie=UTF8&#038;tag=bl057-20&#038;linkCode=as2&#038;camp=1789&#038;creative=9325&#038;creativeASIN=0932633609" target="_blank"><img src="http://rcm-images.amazon.com/images/I/51-rl+HulCL._SL110_.jpg" width="70" height="80" alt="" align="middle" /> Waltzing With Bears</a></li>
<li> <a href="http://www.amazon.com/gp/product/0976694026?ie=UTF8&#038;tag=bl057-20&#038;linkCode=as2&#038;camp=1789&#038;creative=9325&#038;creativeASIN=0976694026" target="_blank"><img src="http://rcm-images.amazon.com/images/I/41y28QznUKL._SL110_.jpg"  width="70" height="80" alt="" align="middle" />Behind Closed Doors: Secrets of Great Management </a></li>
<li> <a href="http://www.amazon.com/gp/product/1934356298?ie=UTF8&#038;tag=bl057-20&#038;linkCode=as2&#038;camp=1789&#038;creative=9325&#038;creativeASIN=1934356298" target="_blank"><img src="http://rcm-images.amazon.com/images/I/41RWOLAMQpL._SL110_.jpg"  width="70" height="80" alt="" align="middle" />Manage Your Project Portfolio</a></li>
</ol>
<p align="left"><a class="tt" href="http://twitter.com/home/?status=Top+10+Software+Project+Management+Books+http://cg4ms.th8.us" title="Post to Twitter"><img class="nothumb" src="http://developer.blueid.de/wp-content/plugins/tweet-this/icons/tt-twitter.png" alt="Post to Twitter" /></a> <a class="tt" href="http://twitter.com/home/?status=Top+10+Software+Project+Management+Books+http://cg4ms.th8.us" title="Post to Twitter">Tweet This Post</a></p>]]></content:encoded>
			<wfw:commentRss>http://developer.blueid.de/2010/01/20/top-10-software-project-management-books/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Top 10 Software Engineering Books</title>
		<link>http://developer.blueid.de/2010/01/20/top10_software_engineering_books/</link>
		<comments>http://developer.blueid.de/2010/01/20/top10_software_engineering_books/#comments</comments>
		<pubDate>Wed, 20 Jan 2010 15:13:44 +0000</pubDate>
		<dc:creator>asc</dc:creator>
				<category><![CDATA[Allgemein]]></category>

		<guid isPermaLink="false">http://developer.blueid.de/?p=184</guid>
		<description><![CDATA[Here is my personal Top 10 list of books about various topics of software engineering: The Mythical Man-Month Design Patterns Facts and Fallacies of Software Engineering Applying UML and Patterns Object-Oriented Software Construction Head First Design Patterns Patterns of Enterprise Application Architecture Domain-Driven Design Release It! Enterprise Integration Patterns Tweet This Post]]></description>
			<content:encoded><![CDATA[<p>Here is my personal Top 10 list of books about various topics of software engineering:</p>
<ol>
<li> <a href="http://www.amazon.com/gp/product/0201835959?ie=UTF8&#038;tag=bl057-20&#038;linkCode=as2&#038;camp=1789&#038;creative=9325&#038;creativeASIN=0201835959" target="_blank"><img src="http://rcm-images.amazon.com/images/I/51WIpM70FEL._SL110_.jpg" width="70" height="80" alt="" align="middle" /> The Mythical Man-Month</a></li>
<li> <a href="http://www.amazon.com/gp/product/0201633612?ie=UTF8&#038;tag=bl057-20&#038;linkCode=as2&#038;camp=1789&#038;creative=9325&#038;creativeASIN=0201633612" target="_blank"><img src="http://rcm-images.amazon.com/images/I/51EVqBwJnBL._SL110_.jpg"  width="70" height="80" alt="" align="middle" /> Design Patterns</a></li>
<li> <a href="http://www.amazon.com/gp/product/0321117425?ie=UTF8&#038;tag=bl057-20&#038;linkCode=as2&#038;camp=1789&#038;creative=9325&#038;creativeASIN=0321117425" target="_blank"><img src="http://rcm-images.amazon.com/images/I/41FQDEB4DNL._SL110_.jpg"  width="70" height="80" alt="" align="middle" /> Facts and Fallacies of Software Engineering</a></li>
<li> <a href="http://www.amazon.com/gp/product/0131489062?ie=UTF8&#038;tag=bl057-20&#038;linkCode=as2&#038;camp=1789&#038;creative=9325&#038;creativeASIN=0131489062" target="_blank"><img src="http://rcm-images.amazon.com/images/I/51aukquzeFL._SL110_.jpg"  width="70" height="80" alt="" align="middle" /> Applying UML and Patterns </a></li>
<li> <a href="http://www.amazon.com/gp/product/0136291554?ie=UTF8&#038;tag=bl057-20&#038;linkCode=as2&#038;camp=1789&#038;creative=9325&#038;creativeASIN=0136291554" target="_blank"><img src="http://rcm-images.amazon.com/images/I/41A3ny2TshL._SL110_.jpg"  width="70" height="80" alt="" align="middle" />Object-Oriented Software Construction</a></li>
<li> <a href="http://www.amazon.com/gp/product/0596007124?ie=UTF8&#038;tag=bl057-20&#038;linkCode=as2&#038;camp=1789&#038;creative=9325&#038;creativeASIN=0596007124" target="_blank"><img src="http://rcm-images.amazon.com/images/I/51LSqrgoT1L._SL110_.jpg"  width="70" height="80" alt="" align="middle" />Head First Design Patterns </a></li>
<li> <a href="http://www.amazon.com/gp/product/0321127420?ie=UTF8&#038;tag=bl057-20&#038;linkCode=as2&#038;camp=1789&#038;creative=9325&#038;creativeASIN=0321127420" target="_blank"><img src="http://rcm-images.amazon.com/images/I/511D6FdsbXL._SL110_.jpg"  width="70" height="80" alt="" align="middle" />Patterns of Enterprise Application Architecture </a></li>
<li> <a href="http://www.amazon.com/gp/product/0321125215?ie=UTF8&#038;tag=bl057-20&#038;linkCode=as2&#038;camp=1789&#038;creative=9325&#038;creativeASIN=0321125215" target="_blank"><img src="http://rcm-images.amazon.com/images/I/31ywgz51v-L._SL110_.jpg" width="70" height="80" alt="" align="middle" /> Domain-Driven Design</a></li>
<li> <a href="http://www.amazon.com/gp/product/0978739213?ie=UTF8&#038;tag=bl057-20&#038;linkCode=as2&#038;camp=1789&#038;creative=9325&#038;creativeASIN=0978739213" target="_blank"><img src="http://rcm-images.amazon.com/images/I/41Nb-knuW-L._SL110_.jpg"  width="70" height="80" alt="" align="middle" />Release It!</a></li>
<li> <a href="http://www.amazon.com/gp/product/0321200683?ie=UTF8&#038;tag=bl057-20&#038;linkCode=as2&#038;camp=1789&#038;creative=9325&#038;creativeASIN=0321200683" target="_blank"><img src="http://rcm-images.amazon.com/images/I/51tVn4YqQUL._SL110_.jpg"  width="70" height="80" alt="" align="middle" />Enterprise Integration Patterns </a></li>
</ol>
<p align="left"><a class="tt" href="http://twitter.com/home/?status=Top+10+Software+Engineering+Books+http://bnyqi.th8.us" title="Post to Twitter"><img class="nothumb" src="http://developer.blueid.de/wp-content/plugins/tweet-this/icons/tt-twitter.png" alt="Post to Twitter" /></a> <a class="tt" href="http://twitter.com/home/?status=Top+10+Software+Engineering+Books+http://bnyqi.th8.us" title="Post to Twitter">Tweet This Post</a></p>]]></content:encoded>
			<wfw:commentRss>http://developer.blueid.de/2010/01/20/top10_software_engineering_books/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Top 10 Programming Books</title>
		<link>http://developer.blueid.de/2010/01/19/top10_programmer_books/</link>
		<comments>http://developer.blueid.de/2010/01/19/top10_programmer_books/#comments</comments>
		<pubDate>Tue, 19 Jan 2010 14:57:21 +0000</pubDate>
		<dc:creator>asc</dc:creator>
				<category><![CDATA[Allgemein]]></category>

		<guid isPermaLink="false">http://developer.blueid.de/?p=121</guid>
		<description><![CDATA[Here is my personal Top 10 list of books for computer programmers: Code Complete The Pragmatic Programmer: From Journeyman to Master Refactoring: Improving the Design of Existing Code Rapid Development Clean Code Working Effectively with Legacy Code Art of Computer Programming Programming Pearls (2nd Edition) The Productive Programmer The Practice of Programming If you like [...]]]></description>
			<content:encoded><![CDATA[<p>Here is my personal Top 10 list of books for computer programmers:</p>
<ol>
<li> <a href="http://www.amazon.com/dp/0735619670?tag=bl057-20&amp;camp=14573&amp;creative=327641&amp;linkCode=as1&amp;creativeASIN=0735619670&amp;adid=1E3Y6N19ESH1BR8QZSE7&amp;" target="_blank"><img src="http://rcm-images.amazon.com/images/I/51hDvTy1LlL._SL75_.jpg" width="70" height="80" alt="" align="middle" /> Code Complete</a></li>
<li> <a href="http://www.amazon.com/gp/product/020161622X?ie=UTF8&#038;tag=bl057-20&#038;linkCode=as2&#038;camp=1789&#038;creative=9325&#038;creativeASIN=020161622X" target="_blank"><img src="http://rcm-images.amazon.com/images/I/41HXiIojloL._SL110_.jpg"  width="70" height="80" alt="" align="middle" /> The Pragmatic Programmer: From Journeyman to Master</a></li>
<li> <a href="http://www.amazon.com/gp/product/0201485672?ie=UTF8&#038;tag=bl057-20&#038;linkCode=as2&#038;camp=1789&#038;creative=9325&#038;creativeASIN=0201485672" target="_blank"><img src="http://rcm-images.amazon.com/images/I/21ZceZ5jBTL._SL110_.jpg"  width="70" height="80" alt="" align="middle" /> Refactoring: Improving the Design of Existing Code</a></li>
<li> <a href="http://www.amazon.com/gp/product/1556159005?ie=UTF8&#038;tag=bl057-20&#038;linkCode=as2&#038;camp=1789&#038;creative=9325&#038;creativeASIN=1556159005" target="_blank"><img src="http://rcm-images.amazon.com/images/I/41+sSYBlD9L._SL110_.jpg"  width="70" height="80" alt="" align="middle" /> Rapid Development </a></li>
<li> <a href="http://www.amazon.com/gp/product/0132350882?ie=UTF8&#038;tag=bl057-20&#038;linkCode=as2&#038;camp=1789&#038;creative=9325&#038;creativeASIN=0132350882" target="_blank"><img src="http://rcm-images.amazon.com/images/I/41wGTnmRTFL._SL110_.jpg"  width="70" height="80" alt="" align="middle" />Clean Code</a></li>
<li> <a href="http://www.amazon.com/gp/product/0131177052?ie=UTF8&#038;tag=bl057-20&#038;linkCode=as2&#038;camp=1789&#038;creative=9325&#038;creativeASIN=0131177052" target="_blank"><img src="http://rcm-images.amazon.com/images/I/51RCXGPXQ8L._SL110_.jpg"  width="70" height="80" alt="" align="middle" />Working Effectively with Legacy Code</a></li>
<li> <a href="http://www.amazon.com/gp/product/0201485419?ie=UTF8&amp;tag=bl057-20&amp;linkCode=as2&amp;camp=1789&amp;creative=9325&amp;creativeASIN=0201485419" target="_blank"><img src="http://rcm-images.amazon.com/images/I/41c-uUIgtyL._SL110_.jpg" width="70" height="80" alt="" align="middle" /> Art of Computer Programming</a></li>
<li> <a href="http://www.amazon.com/gp/product/0201657880?ie=UTF8&#038;tag=bl057-20&#038;linkCode=as2&#038;camp=1789&#038;creative=9325&#038;creativeASIN=0201657880" target="_blank"><img src="http://rcm-images.amazon.com/images/I/41ETT7KQRRL._SL110_.jpg"  width="70" height="80" alt="" align="middle" />Programming Pearls (2nd Edition) </a></li>
<li> <a href="http://www.amazon.com/gp/product/0596519788?ie=UTF8&#038;tag=bl057-20&#038;linkCode=as2&#038;camp=1789&#038;creative=9325&#038;creativeASIN=0596519788" target="_blank"><img src="http://rcm-images.amazon.com/images/I/61dx4Iu-fyL._SL110_.jpg"  width="70" height="80" alt="" align="middle" />The Productive Programmer</a></li>
<li> <a href="http://www.amazon.com/gp/product/020161586X?ie=UTF8&#038;tag=bl057-20&#038;linkCode=as2&#038;camp=1789&#038;creative=9325&#038;creativeASIN=020161586X" target="_blank"><img src="http://rcm-images.amazon.com/images/I/21WkP5B9mNL._SL110_.jpg"  width="70" height="80" alt="" align="middle" />The Practice of Programming </a></li>
</ol>
<p>If you like this Top 10 list, I will create other lists of my favourite agile books and software engineering books.</p>
<p align="left"><a class="tt" href="http://twitter.com/home/?status=Top+10+Programming+Books+http://h8rfa.th8.us" title="Post to Twitter"><img class="nothumb" src="http://developer.blueid.de/wp-content/plugins/tweet-this/icons/tt-twitter.png" alt="Post to Twitter" /></a> <a class="tt" href="http://twitter.com/home/?status=Top+10+Programming+Books+http://h8rfa.th8.us" title="Post to Twitter">Tweet This Post</a></p>]]></content:encoded>
			<wfw:commentRss>http://developer.blueid.de/2010/01/19/top10_programmer_books/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Develop web applications with IPhone Look and Feel</title>
		<link>http://developer.blueid.de/2010/01/18/develop-web-applications-with-native-iphone-look-and-feel/</link>
		<comments>http://developer.blueid.de/2010/01/18/develop-web-applications-with-native-iphone-look-and-feel/#comments</comments>
		<pubDate>Mon, 18 Jan 2010 09:46:46 +0000</pubDate>
		<dc:creator>asc</dc:creator>
				<category><![CDATA[Allgemein]]></category>

		<guid isPermaLink="false">http://developer.blueid.de/?p=99</guid>
		<description><![CDATA[If you want to create applications for the IPhone but don&#8217;t want to go into the troubles with the ITunes Store or you are too lazy to learn Objective-C, there is another possibility: create a web application with a native IPhone Look and Feel. For this purpose there exist some frameworks: iui iWebKit Apache Trinidad [...]]]></description>
			<content:encoded><![CDATA[<p>If you want to create applications for the IPhone but don&#8217;t want to go into the troubles with the ITunes Store or you are too lazy to learn Objective-C, there is another possibility: create a web application with a native IPhone Look and Feel.</p>
<p>For this purpose there exist some frameworks:</p>
<ul>
<li><a href="http://code.google.com/p/iui/" target="_blank">iui</a></li>
<li><a href="http://iwebkit.net/" target="_blank">iWebKit</a></li>
<li><a href="http://myfaces.apache.org/trinidad/devguide/mobileSkinning.html" target="_blank">Apache Trinidad</a></li>
</ul>
<p>These frameworks fake the Look and Feel of an IPhone application by using CSS and JavaScript. The developer creates normal HTML lists and includes the framework, which does all the hard work. Following there are two pictures that show a music application developed with the frameworks iui (on the left) and iWebKit (on the right).</p>
<p><a href="http://developer.blueid.de/wp-content/uploads/2010/01/iui.png"><img class="size-medium wp-image-29" title="iui" src="http://developer.blueid.de/wp-content/uploads/2010/01/iui-218x300.png" alt="" width="218" height="300" /></a> <a href="http://developer.blueid.de/wp-content/uploads/2010/01/iwebkit1.png"><img class="alignnone size-medium wp-image-35" title="iwebkit" src="http://developer.blueid.de/wp-content/uploads/2010/01/iwebkit1-219x300.png" alt="" width="219" height="300" /></a></p>
<p>To hide the status bar of the Safari browser, add the following code to the HTML header:</p>
<pre>
<code>&lt;meta name="viewport" content="width=device-width; initial-scale=1.0;
               maximum-scale=1.0; user-scalable=0;"/&gt;
&lt;meta name="apple-touch-fullscreen" content="YES"/&gt;</code>
</pre>
<p>The web application can be placed on the IPhone start screen like a native app. The title of the HTML file is used as application name. The icon of the application can be set with the following code:</p>
<pre>
<code>&lt;link rel="apple-touch-icon" href="icon.png"/&gt;</code>
</pre>
<p>If you want to upload your web application to the ITunes Store, you should look at the following frameworks:</p>
<ul>
<li><a href="http://www.nimblekit.com/" target="_blank">Nimble</a></li>
<li><a href="http://phonegap.com/" target="_blank">PhoneGap</a></li>
</ul>
<p>They allow the conversion of HTML pages into native IPhone apps.</p>
<p align="left"><a class="tt" href="http://twitter.com/home/?status=Develop+web+applications+with+IPhone+Look+and+Feel+http://shxhd.th8.us" title="Post to Twitter"><img class="nothumb" src="http://developer.blueid.de/wp-content/plugins/tweet-this/icons/tt-twitter.png" alt="Post to Twitter" /></a> <a class="tt" href="http://twitter.com/home/?status=Develop+web+applications+with+IPhone+Look+and+Feel+http://shxhd.th8.us" title="Post to Twitter">Tweet This Post</a></p>]]></content:encoded>
			<wfw:commentRss>http://developer.blueid.de/2010/01/18/develop-web-applications-with-native-iphone-look-and-feel/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Make changes to an Android Package internally in Java</title>
		<link>http://developer.blueid.de/2010/01/14/make-changes-to-an-android-package-internally-in-java/</link>
		<comments>http://developer.blueid.de/2010/01/14/make-changes-to-an-android-package-internally-in-java/#comments</comments>
		<pubDate>Thu, 14 Jan 2010 16:34:19 +0000</pubDate>
		<dc:creator>Julia Bory</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Android]]></category>
		<category><![CDATA[APK]]></category>
		<category><![CDATA[apkbuilder]]></category>
		<category><![CDATA[blueid]]></category>
		<category><![CDATA[com.android.apkbuilder.ApkBuilder]]></category>
		<category><![CDATA[HTC Hero]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Motorola Milestone]]></category>
		<category><![CDATA[packen]]></category>
		<category><![CDATA[Phone]]></category>
		<category><![CDATA[rezip]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[Sicherheit]]></category>
		<category><![CDATA[sign]]></category>
		<category><![CDATA[signieren]]></category>
		<category><![CDATA[signing]]></category>
		<category><![CDATA[signjarbuilder]]></category>
		<category><![CDATA[unzip]]></category>
		<category><![CDATA[zip]]></category>

		<guid isPermaLink="false">http://developer.blueid.de/?p=75</guid>
		<description><![CDATA[We&#8217;re just finishing our new BlueID Client for Android devices. During the development I realized, that we need to rezip the BlueID software for Android because it must be personalized on the fly on download request. This is needed for security! I found no tutorial explaining this content and it was a little bit tricky. [...]]]></description>
			<content:encoded><![CDATA[<p>We&#8217;re just finishing our new <a href="http://www.blueid.de" target="_blank">BlueID</a> Client for Android devices. During the development I realized, that we need to rezip the <a href="http://www.blueid.de" target="_blank">BlueID</a> software for Android because it must be personalized on the fly on download request. This is needed for security!<br />
<br />
I found no tutorial explaining this content and it was a little bit tricky. If you like to make changes to an Android Package (file ending apk) internally in Java you need to do more than only unzip and zip again. I first tried to solve this by using the apkbuilder form the android-sdk tools, but it only works with file operations. I think I found a better solution.</p>
<p>First you need to include some libraries from the android-sdk tools lib folder into your project.</p>
<ul>
<li>apkbuilder.jar</li>
<li>androidprefs.jar</li>
<li>jarutils.jar</li>
</ul>
<p>Then you need to make your changes to your package with the standard ZipStreams from Java. After this, use the following method for rezip or sign the package correctly for Android phones.</p>
<pre>
<code>public byte[] packApk(byte[] zip) throws Exception {

        DebugKeyProvider keyProvider = new DebugKeyProvider(null, null, null);
        PrivateKey key = keyProvider.getDebugKey();
        X509Certificate certificate = (X509Certificate) keyProvider.getCertificate();

        ByteArrayOutputStream bout = new ByteArrayOutputStream();

        SignedJarBuilder builder = new SignedJarBuilder(bout, key, certificate);
        builder.writeZip(new ByteArrayInputStream(zip), null);
        builder.close();

        return bout.toByteArray();
}</code>
</pre>
<p>I hope this code will help you! </p>
<p>Regards, Julia Bory</p>
<p align="left"><a class="tt" href="http://twitter.com/home/?status=Make+changes+to+an+Android+Package+internally+in+Java+http://68qfo.th8.us" title="Post to Twitter"><img class="nothumb" src="http://developer.blueid.de/wp-content/plugins/tweet-this/icons/tt-twitter.png" alt="Post to Twitter" /></a> <a class="tt" href="http://twitter.com/home/?status=Make+changes+to+an+Android+Package+internally+in+Java+http://68qfo.th8.us" title="Post to Twitter">Tweet This Post</a></p>]]></content:encoded>
			<wfw:commentRss>http://developer.blueid.de/2010/01/14/make-changes-to-an-android-package-internally-in-java/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Spring und JAX-RS</title>
		<link>http://developer.blueid.de/2010/01/14/spring-und-jax-rs/</link>
		<comments>http://developer.blueid.de/2010/01/14/spring-und-jax-rs/#comments</comments>
		<pubDate>Thu, 14 Jan 2010 13:41:32 +0000</pubDate>
		<dc:creator>asc</dc:creator>
				<category><![CDATA[Allgemein]]></category>

		<guid isPermaLink="false">http://developer.blueid.de/?p=55</guid>
		<description><![CDATA[Dieser Artikel erläutert, wie man das Spring Framework zusammen mit dem JAX-RS-Provider Jersey einsetzen kann. Das Ziel soll sein, dass die Rest-Resourcen automatisch instantitiert werden und die benötigten Abhängigkeiten über Spring injiziert werden. Dazu muss zuerst in der web.xml das Spring-Framework durch die Angabe zweier Listener und durch Festlegung der Spring-Konfigurationsdatei initialisiert werden. Außerdem muss [...]]]></description>
			<content:encoded><![CDATA[<p>Dieser Artikel erläutert, wie man das Spring Framework zusammen mit dem JAX-RS-Provider Jersey einsetzen kann. Das Ziel soll sein, dass die Rest-Resourcen automatisch instantitiert werden und die benötigten Abhängigkeiten über Spring injiziert werden.</p>
<p>Dazu muss zuerst in der web.xml das Spring-Framework durch die Angabe zweier Listener und durch Festlegung der Spring-Konfigurationsdatei initialisiert werden. Außerdem muss ein spezielles SpringServlet eingebunden werden, dass die Rest-Anfragen an Jersey weiterleitet. Dieses Servlet liefert Jersey im Paket jersey-spring mit. </p>
<pre>
<code>&lt;?xml version="1.0" encoding="UTF-8"?&gt;
&lt;web-app version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"&gt;
&lt;context-param&gt;
        &lt;param-name&gt;contextConfigLocation&lt;/param-name&gt;
        &lt;param-value&gt;/WEB-INF/applicationContext.xml&lt;/param-value&gt;
    &lt;/context-param&gt;
    &lt;listener&gt;
        &lt;listener-class&gt;
           org.springframework.web.context.ContextLoaderListener
        &lt;/listener-class&gt;
    &lt;/listener&gt;
    &lt;listener&gt;
        &lt;listener-class&gt;
  org.springframework.web.context.request.RequestContextListener
        &lt;/listener-class&gt;
    &lt;/listener&gt;
    &lt;servlet&gt;
        &lt;servlet-name&gt;Jersey Spring Web Application&lt;/servlet-name&gt;
        &lt;servlet-class&gt;
           com.sun.jersey.spi.spring.container.servlet.SpringServlet
        &lt;/servlet-class&gt;
    &lt;/servlet&gt;
    &lt;servlet-mapping&gt;
        &lt;servlet-name&gt;Jersey Spring Web Application&lt;/servlet-name&gt;
        &lt;url-pattern&gt;/*&lt;/url-pattern&gt;
    &lt;/servlet-mapping&gt;
&lt;/web-app&gt;</code>
</pre>
<p>In der Spring-Konfigurationsdatei ist nur ein Eintrag nötig. Mittels Component-Scan werden alle Rest-Resourcen gefunden, die mit der Annotation @Component markiert sind. Danach werden alle Beans definiert, die in die Rest-Resourcen-Klassen injiziert werden sollen (im Beispiel: testObject).</p>
<pre>
<code>&lt;beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context"
       xsi:schemaLocation="

http://www.springframework.org/schema/beans

http://www.springframework.org/schema/beans/spring-beans-2.5.xsd

http://www.springframework.org/schema/context

http://www.springframework.org/schema/context/spring-context-2.5.xsd"&gt;

    &lt;context:component-scan base-package="de.baimos.blueid.test"/&gt;

    &lt;bean id="testObject" class="de.baimos.blueid.test.TestObject"/&gt;
&lt;/beans&gt;</code>
</pre>
<p>Nachfolgend wir eine Rest-Resourcen-Klasse erstellt. Wie bereits erwähnt, muss diese mit der Annotation @Component ausgezeichnet werden, um vom Spring-Framework gefunden zu werden. Damit nicht bei jeder Anfrage ein neues Objekt erzeugt wird, wird der Scope auf Singleton gesetzt. Mit Hilfe der Annotation Path wird festgelegt unter welchen Pfad die Resource zu erreichen ist.</p>
<p>Schließlich wird eine Instanz von TestObject über die Annotation @Resource angefragt, die dann von Spring automatisch injiziert wird.</p>
<pre>
<code>@Component
@Path("hello")
@Scope("singleton")
public class HelloWorld {

    @Resource
    private TestObject testObject;

    @GET
    public String sayHello( @QueryParam("name")String name){
           return testObject.sayHello(name);
    }

}</code>
</pre>
<p align="left"><a class="tt" href="http://twitter.com/home/?status=Spring+und+JAX-RS+http://xgk6d.th8.us" title="Post to Twitter"><img class="nothumb" src="http://developer.blueid.de/wp-content/plugins/tweet-this/icons/tt-twitter.png" alt="Post to Twitter" /></a> <a class="tt" href="http://twitter.com/home/?status=Spring+und+JAX-RS+http://xgk6d.th8.us" title="Post to Twitter">Tweet This Post</a></p>]]></content:encoded>
			<wfw:commentRss>http://developer.blueid.de/2010/01/14/spring-und-jax-rs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fun with Java Generics: A Fluent Map</title>
		<link>http://developer.blueid.de/2010/01/14/fluentmap/</link>
		<comments>http://developer.blueid.de/2010/01/14/fluentmap/#comments</comments>
		<pubDate>Thu, 14 Jan 2010 12:37:21 +0000</pubDate>
		<dc:creator>asc</dc:creator>
				<category><![CDATA[Allgemein]]></category>

		<guid isPermaLink="false">http://developer.blueid.de/?p=47</guid>
		<description><![CDATA[Are you sick of creating maps with all the redundant syntax like in the example below? Map&#60;Integer, String&#62; map = new HashMap&#60;Integer, String&#62;(); map.put(1, "ONE"); map.put(2, "TWO"); map.put(3, "THREE"); With the usage of some advanced Java 5 features, we can make map creation simpler: Map( o(1, "ONE"), o(2, "TWO"), o(3, "THREE"), ); Too make this [...]]]></description>
			<content:encoded><![CDATA[<p>Are you sick of creating maps with all the redundant syntax like in the example below?</p>
<pre><code>Map&lt;Integer, String&gt; map = new HashMap&lt;Integer, String&gt;();
map.put(1, "ONE");
map.put(2, "TWO");
map.put(3, "THREE");</code></pre>
<p>With the usage of some advanced Java 5 features, we can make map creation simpler:</p>
<pre><code>Map(
   o(1, "ONE"),
   o(2, "TWO"),
   o(3, "THREE"),
);</code></pre>
<p>Too make this happen you need the class that is listed below. Just import the methods <em>Map</em> and <em>o</em> statically and then lets rock!</p>
<pre><code>public class FluentMap {

    public static &lt;K, V&gt; Map&lt;K, V&gt; Map(Tuple&lt;K, V&gt;... entries) {
        Map&lt;K, V&gt; map = new HashMap&lt;K, V&gt;();

        for (Tuple&lt;K, V&gt; entry : entries) {
            map.put(entry.t1, entry.t2);
        }
        return map;
    }

    public static &lt;T1, T2&gt; Tuple&lt;T1, T2&gt; o(T1 o1, T2 o2) {
        return new Tuple&lt;T1, T2&gt;(o1, o2);
    }

    public static class Tuple&lt;T1, T2&gt; {
        private T1 t1;
        private T2 t2;

        public Tuple(T1 t1, T2 t2) {
            this.t1 = t1;
            this.t2 = t2;
        }
    }
}</code></pre>
<p>The trick here is that Java supports <a href="http://java.sun.com/docs/books/tutorial/extra/generics/methods.html">type inference in static methods</a>. That is why you don&#8217;t need to specify any type. </p>
<p align="left"><a class="tt" href="http://twitter.com/home/?status=Fun+with+Java+Generics%3A+A+Fluent+Map+http://iem8f.th8.us" title="Post to Twitter"><img class="nothumb" src="http://developer.blueid.de/wp-content/plugins/tweet-this/icons/tt-twitter.png" alt="Post to Twitter" /></a> <a class="tt" href="http://twitter.com/home/?status=Fun+with+Java+Generics%3A+A+Fluent+Map+http://iem8f.th8.us" title="Post to Twitter">Tweet This Post</a></p>]]></content:encoded>
			<wfw:commentRss>http://developer.blueid.de/2010/01/14/fluentmap/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Webapplikation mit IPhone Look and Feel</title>
		<link>http://developer.blueid.de/2010/01/14/webapplikation-im-iphone-look-and-feel/</link>
		<comments>http://developer.blueid.de/2010/01/14/webapplikation-im-iphone-look-and-feel/#comments</comments>
		<pubDate>Thu, 14 Jan 2010 09:41:30 +0000</pubDate>
		<dc:creator>asc</dc:creator>
				<category><![CDATA[Allgemein]]></category>

		<guid isPermaLink="false">http://developer.blueid.de/?p=3</guid>
		<description><![CDATA[Um die Komplikationen mit dem ITunes Store zu umgehen oder um sich die Einarbeitung in Objective-C zu sparen, empfiehlt es sich, eine Webapplikation mit IPhone Look and Feel zu entwickeln. Für diesen Zweck gibt es bereits einige Frameworks. Dazu gehören: iui iWebKit Apache Trinidad Diese Frameworks bilden durch geschickten Einsatz von CSS und JavaScript eine [...]]]></description>
			<content:encoded><![CDATA[<p>Um die Komplikationen mit dem ITunes Store zu umgehen oder um sich die Einarbeitung in Objective-C zu sparen, empfiehlt es sich, eine Webapplikation mit IPhone Look and Feel zu entwickeln.</p>
<p>Für diesen Zweck gibt es bereits einige Frameworks. Dazu gehören:</p>
<ul>
<li><a href="http://code.google.com/p/iui/" target="_blank">iui</a></li>
<li><a href="http://iwebkit.net/" target="_blank">iWebKit</a></li>
<li><a href="http://myfaces.apache.org/trinidad/devguide/mobileSkinning.html" target="_blank">Apache Trinidad</a></li>
</ul>
<p>Diese Frameworks bilden durch geschickten Einsatz von CSS und JavaScript eine native IPhone-Applikation nach. Die nachfolgenden zwei Bilder zeigen eine Musikapplikation die mit den Frameworks iui (links) und iWebKit (rechts) entwickelt wurde.</p>
<p><a href="http://developer.blueid.de/wp-content/uploads/2010/01/iui.png"><img class="size-medium wp-image-29" title="iui" src="http://developer.blueid.de/wp-content/uploads/2010/01/iui-218x300.png" alt="" width="218" height="300" /></a> <a href="http://developer.blueid.de/wp-content/uploads/2010/01/iwebkit1.png"><img class="alignnone size-medium wp-image-35" title="iwebkit" src="http://developer.blueid.de/wp-content/uploads/2010/01/iwebkit1-219x300.png" alt="" width="219" height="300" /></a></p>
<p>Um die Statusleisten des Browsers verschwinden zu lassen ist folgender Code im Header der HTML-Datei zu platzieren:</p>
<pre>
<code>&lt;meta name="viewport" content="width=device-width; initial-scale=1.0;
               maximum-scale=1.0; user-scalable=0;"/&gt;
&lt;meta name="apple-touch-fullscreen" content="YES"/&gt;</code>
</pre>
<p>Die Webapplikation lässt sich, wie eine native Anwendung auch, auf den Startscreen des IPhones ziehen. Als Applikationsname wird der in der HTML-Datei festgelegt Titel verwendet. Das Icon kann man durch folgenden Code im Header setzen.</p>
<pre>
<code>&lt;link rel="apple-touch-icon" href="icon.png"/&gt;</code>
</pre>
<p>Wer seine Webapplikationen  in den ITunes Store hochladen will, sollte sich folgende Frameworks ansehen.</p>
<ul>
<li><a href="http://www.nimblekit.com/" target="_blank">Nimble</a></li>
<li><a href="http://phonegap.com/" target="_blank">PhoneGap</a></li>
</ul>
<p>Diese erlauben nämlich die Umwandlung von HTML-Seiten in native IPhone-Applikationen.</p>
<p align="left"><a class="tt" href="http://twitter.com/home/?status=Webapplikation+mit+IPhone+Look+and+Feel+http://4wdys.th8.us" title="Post to Twitter"><img class="nothumb" src="http://developer.blueid.de/wp-content/plugins/tweet-this/icons/tt-twitter.png" alt="Post to Twitter" /></a> <a class="tt" href="http://twitter.com/home/?status=Webapplikation+mit+IPhone+Look+and+Feel+http://4wdys.th8.us" title="Post to Twitter">Tweet This Post</a></p>]]></content:encoded>
			<wfw:commentRss>http://developer.blueid.de/2010/01/14/webapplikation-im-iphone-look-and-feel/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
