<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>BlackBerry Developer Blog &#187; Fixmo</title>
	<atom:link href="http://devblog.blackberry.com/tag/fixmo/feed/" rel="self" type="application/rss+xml" />
	<link>http://devblog.blackberry.com</link>
	<description></description>
	<lastBuildDate>Wed, 19 Jun 2013 18:00:36 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='devblog.blackberry.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://1.gravatar.com/blavatar/9ef0a66c09615fa946c4179662398878?s=96&#038;d=http%3A%2F%2Fs2.wp.com%2Fi%2Fbuttonw-com.png</url>
		<title>BlackBerry Developer Blog &#187; Fixmo</title>
		<link>http://devblog.blackberry.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://devblog.blackberry.com/osd.xml" title="BlackBerry Developer Blog" />
	<atom:link rel='hub' href='http://devblog.blackberry.com/?pushpress=hub'/>
		<item>
		<title>Fixmo Tools Leverage BlackBerry APIs to Bring Add-on Functionality to Your BlackBerry Smartphone</title>
		<link>http://devblog.blackberry.com/2012/01/fixmo-tools-blackberry/</link>
		<comments>http://devblog.blackberry.com/2012/01/fixmo-tools-blackberry/#comments</comments>
		<pubDate>Wed, 04 Jan 2012 18:41:59 +0000</pubDate>
		<dc:creator>Gurtej S.</dc:creator>
				<category><![CDATA[How-to]]></category>
		<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[app]]></category>
		<category><![CDATA[BlackBerry API]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[Fixmo]]></category>
		<category><![CDATA[Fixmo Tools]]></category>
		<category><![CDATA[wi-fi]]></category>

		<guid isPermaLink="false">http://devblog.blackberry.com/?p=8120</guid>
		<description><![CDATA[Read about the new update to the Fixmo Tools app and what features it contains.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=8120&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p><img class="aligncenter size-full wp-image-8121" title="Fixmo Tools" src="http://rimdevblog.files.wordpress.com/2011/12/fixmo.jpg?w=480&#038;h=360" alt="Fixmo Tools" width="480" height="360" /></p>
<p>Have you ever found yourself in a situation where you caught yourself sending an email on your BlackBerry® smartphone to an unintended recipient? Or maybe you’ve found that you need an application that intelligently manages your Wi-Fi® connection to conserve battery life. Well, you’re in luck &#8211; <a href="http://fixmo.com/" target="_new">Fixmo®</a> has just released a new version of their Fixmo Tools application that is designed to address these issues.</p>
<p>The Conserve Wi-Fi app that Fixmo has introduced in this new release of Fixmo Tools helps save BlackBerry smartphone battery life by turning Wi-Fi on and off based on your cell tower location. How is this possible? Well, as part of the <em><a href="http://www.blackberry.com/developers/docs/7.0.0api/net/rim/device/api/system/Radio.html" target="_new">net.rim.device.api.system.Radio</a></em> class, you can programmatically activate or deactivate available radios on the BlackBerry smartphone. A <a href="http://supportforums.blackberry.com/t5/Java-Development/Simple-Location-API/ta-p/1145951" target="_new">must-read knowledge base article</a> that simplifies your development in getting a location fix can be found on the support forums.</p>
<p>With this new release of <a href="http://appworld.blackberry.com/webstore/content/5866" target="_new">Fixmo Tools version 2.5</a>, you get a total of 18 applications all in one simple download, which now also has support for <a href="http://ca.blackberry.com/apps-software/blackberry7/" target="_new">BlackBerry® 7 OS</a> devices.</p>
<p><span id="more-8120"></span></p>
<p>Fixmo now also provides the ability to optionally delete any applications that are used less frequently. The trick here is to work with the <em><a href="http://www.blackberry.com/developers/docs/7.0.0api/net/rim/device/api/system/CodeModuleManager.html" target="_new">net.rim.device.api.system.CodeModuleManager</a></em> class as it allows BlackBerry developers to manage modules installed on a device. For a good example and some more info on this, check out the <a href="http://www.blackberry.com/knowledgecenterpublic/livelink.exe/fetch/2000/348583/800332/800620/How_to_-_Programmatically_install_and_upgrade_applications.html?nodeid=1577335&amp;vernum=0" target="_new">knowledge base article</a> on the topic, which includes the ability to install applications as well as remove them.</p>
<p>We managed to catch up with Fabian Heuwieser from Fixmo Inc. to discuss the development of Fixmo Tools, including the Simple Location API’s that the Fixmo development team was able to leverage. Check it out below:</p>
<p><strong>What is Fixmo Tools?</strong></p>
<p>With Fixmo Tools, we created a framework that allows us to simply add more apps to the “belt of utilities” by just compiling the tools separately as a stand-alone application, and then by plugging it into Fixmo Tools – very similar to a building block piece that you enhance with more building blocks. Simple but powerful tools like Mail Compliance Manager and Undelete enable end-users to protect themselves from accidentally replying to all, adding an unintended recipient to an email, or permanently deleting an important message – actions that can lead to private data loss and reputational risks. Tools and apps like Remote Print, Call Indicator, Forward/Reply with Edit are designed to extend the functionality of the core device applications and services without introducing additional risk to personal or business data.</p>
<p><strong>Why is Fixmo Tools an example of a BlackBerry platform “Super App”?</strong></p>
<p>Our app deeply integrates into the BlackBerry OS, making it the textbook example of a Super App. For example, it makes use of the Calendar, Messages, Call Log, Browser, Contacts, Text Messages, Memo, and Tasks – nearly every system application available on the device.</p>
<p><strong>Which APIs did you use to build the app?</strong></p>
<p>For Fixmo Tools we made use of what felt like every available BlackBerry API. By having 18 tools &#8220;baked&#8221; into one single app, it&#8217;s not easy to list all APIs used, but I will highlight the most important and interesting ones:</p>
<p>First, I will show what APIs we used for <strong>Undelete</strong>, the tool to recover deleted PIM items. Since Fixmo Tools makes it possible to undo a deletion of Memos, Tasks, Calendar Events, PIN Messages, and Contacts, we needed to listen for an event that gets triggered when a <a href="http://www.blackberry.com/developers/docs/5.0.0api/javax/microedition/pim/PIMItem.html" target="_new">PIMItem</a> is deleted. <a href="http://www.blackberry.com/developers/docs/5.0.0api/net/rim/blackberry/api/pdap/PIMListListener.html" target="_new">PIMListListener</a> with its <a href="http://www.blackberry.com/developers/docs/5.0.0api/net/rim/blackberry/api/pdap/PIMListListener.html#itemRemoved(javax.microedition.pim.PIMItem)" target="_new">itemRemoved(PIMItem item)</a> method handles the job well. Then we just needed to recreate and populate the <a href="http://www.blackberry.com/developers/docs/5.0.0api/net/rim/blackberry/api/pdap/BlackBerryMemo.html" target="_new">BlackBerryMemo</a>, <a href="http://www.blackberry.com/developers/docs/5.0.0api/net/rim/blackberry/api/pdap/BlackBerryEvent.html" target="_new">BlackBerryEvent</a>, <a href="http://www.blackberry.com/developers/docs/5.0.0api/net/rim/blackberry/api/pdap/BlackBerryToDo.html" target="_new">BlackBerryToDo</a>, <a href="http://www.blackberry.com/developers/docs/5.0.0api/net/rim/blackberry/api/pdap/BlackBerryContactGroup.html" target="_new">BlackBerryContactGroup</a> and <a href="http://www.blackberry.com/developers/docs/5.0.0api/net/rim/blackberry/api/mail/Message.html">Message</a>.</p>
<p>The <strong>Remind Me Later</strong> tool is also interesting. With the app, it is possible to set reminders from the Contacts, the Call Log or the Messages right into the PIM Calendar &#8211; useful for setting call-back or follow-up notifications. Since the reminder is created through the Menu, we use <a href="http://www.blackberry.com/developers/docs/5.0.0api/net/rim/blackberry/api/menuitem/ApplicationMenuItem.html" target="_new">ApplicationMenuItem</a> to invoke the current application. Let’s say we set a follow-up reminder from the <a href="http://www.blackberry.com/developers/docs/5.0.0api/net/rim/blackberry/api/phone/phonelogs/CallLog.html" target="_new">CallLog</a> &#8211; we need to get the instance of the currently selected <a href="http://www.blackberry.com/developers/docs/5.0.0api/net/rim/blackberry/api/phone/phonelogs/PhoneCallLog.html" target="_new">PhoneCallLog</a> entry to retrieve the name and number of the caller with <a href="http://www.blackberry.com/developers/docs/5.0.0api/net/rim/blackberry/api/phone/phonelogs/PhoneCallLogID.html#getName()" target="_new">getParticipant().getName()</a> and <a href="http://www.blackberry.com/developers/docs/5.0.0api/net/rim/blackberry/api/phone/phonelogs/PhoneCallLogID.html#getNumber()" target="_new">getParticipant().getNumber()</a>, and then we need to <a href="http://www.blackberry.com/developers/docs/5.0.0api/net/rim/blackberry/api/invoke/Invoke.html#invokeApplication(int, net.rim.blackberry.api.invoke.ApplicationArguments)" target="_new">Invoke.invokeApplication</a>(<a href="http://www.blackberry.com/developers/docs/5.0.0api/net/rim/blackberry/api/invoke/Invoke.html#APP_TYPE_CALENDAR" target="_new">Invoke.APP_TYPE_CALENDAR</a>,..) the Calendar application to create an event with <a href="http://www.blackberry.com/developers/docs/5.0.0api/net/rim/blackberry/api/pdap/BlackBerryEvent.html" target="_new">BlackBerryEvent</a>. Through that we have an event in the system calendar reminding us to call back that person.</p>
<p>Another Fixmo Tools app is <strong>Silencer</strong>. It automatically sets your device to silent when it notices a meeting taking place at the moment to ensure your phone does not ring in unwanted situations. The app does that by scanning the calendar for a currently running event. When the detected parameter for the current event is <a href="http://www.blackberry.com/developers/docs/5.0.0api/net/rim/blackberry/api/pdap/BlackBerryEvent.html#FB_BUSY" target="_new">BlackBerryEvent.FB_BUSY</a>, it silences the phone and it shows an icon in the notification tray using <a href="http://www.blackberry.com/developers/docs/5.0.0api/net/rim/blackberry/api/messagelist/ApplicationIndicator.html" target="_new">ApplicationIndicator</a> to inform the user. When the meeting is over, the app automatically un-silences the phone again.</p>
<p>Our <strong>Mail Compliance Manager</strong> app integrates into the Messages application. It warns the user when he or she wants to send an email with inappropriate content or to the wrong recipient. By using the <a href="http://www.blackberry.com/developers/docs/5.0.0api/net/rim/blackberry/api/mail/event/FolderListener.html" target="_new">FolderListener</a>, we can make use of the <a href="http://www.blackberry.com/developers/docs/5.0.0api/net/rim/blackberry/api/mail/event/FolderListener.html#messagesAdded(net.rim.blackberry.api.mail.event.FolderEvent)" target="_new">messagesAdded(FolderEvent e)</a> method that detects an event taking place where a Message is added to a folder; in this case, we check for an outgoing message being sent by the user. After checking some predefined rules (e.g. message containing inappropriate content or is addressed wrongly) we can stop the message from being sent and warn the users about their actions.</p>
<p>Another Fixmo Tools app called <strong>Multi Clipboard</strong> allows the user to make use of an extended clipboard. Through the <a href="http://www.blackberry.com/developers/docs/5.0.0api/net/rim/blackberry/api/menuitem/ApplicationMenuItem.html" target="_new">ApplicationMenuItem</a>, the user can click a custom made <a href="http://www.blackberry.com/developers/docs/5.0.0api/net/rim/device/api/ui/MenuItem.html" target="_new">MenuItem</a> that saves the selected text. But when performing the next copy-action via our <a href="http://www.blackberry.com/developers/docs/5.0.0api/net/rim/device/api/ui/MenuItem.html" target="_new">MenuItem</a>, it does not overwrite the currently saved clipboard content. It saves each copied item in a separate entry. When pasting, you can select which of the previously copied text you want to paste.</p>
<p><strong>Thanks for sharing all of these details with us, Fabian!</strong></p>
<hr />
<p>The <a href="http://appworld.blackberry.com/webstore/content/5866" target="_new">Fixmo Tools</a> application can be downloaded from the <a href="http://appworld.blackberry.com/webstore/content/5866" target="_new">BlackBerry App World™</a> storefront as a 14-day trial version, or you can purchase the full app for $7.99 USD at a special version 2.5 launch price (originally $ 14.99 USD) for a limited time only (check BlackBerry App World for up-to-date details and the availability of this offer).</p>
<p><em>What APIs have you recently leveraged in your apps? Share in the comments below.</em></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rimdevblog.wordpress.com/8120/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rimdevblog.wordpress.com/8120/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=8120&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://devblog.blackberry.com/2012/01/fixmo-tools-blackberry/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/41e8b1a2189dfce0a51887beab21795d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">gurtejsan1</media:title>
		</media:content>

		<media:content url="http://rimdevblog.files.wordpress.com/2011/12/fixmo.jpg" medium="image">
			<media:title type="html">Fixmo Tools</media:title>
		</media:content>
	</item>
	</channel>
</rss>
