<?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>TSW - That Should Work Blog</title>
	<atom:link href="http://blog.msdevstudio.net/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.msdevstudio.net</link>
	<description>Flash, Flex, Web e Aplicações Ricas para Internet!</description>
	<lastBuildDate>Thu, 17 Jan 2013 09:14:21 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>Adobe Flex a partir do zero &amp; AS3 a partir do zero &#8211; Downloads</title>
		<link>http://blog.msdevstudio.net/2012/09/19/adobe-flex-a-partir-do-zero-as3-a-partir-do-zero/</link>
		<comments>http://blog.msdevstudio.net/2012/09/19/adobe-flex-a-partir-do-zero-as3-a-partir-do-zero/#comments</comments>
		<pubDate>Wed, 19 Sep 2012 14:50:26 +0000</pubDate>
		<dc:creator>Mário Santos</dc:creator>
				<category><![CDATA[Action Script & MXML]]></category>
		<category><![CDATA[Air]]></category>
		<category><![CDATA[Flash Builder 4]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[RIA's Geral]]></category>
		<category><![CDATA[Serie Tutoriais AS3]]></category>
		<category><![CDATA[tutorial AS3]]></category>
		<category><![CDATA[as3]]></category>
		<category><![CDATA[ebook]]></category>
		<category><![CDATA[Tutorial]]></category>

		<guid isPermaLink="false">http://blog.msdevstudio.net/?p=2257</guid>
		<description><![CDATA[Como alguns devem ter notado, o meu blog foi alvo de um ataque atraves de uma plugin com uma falha de seguranca e todos os dados do blog foram perdidos, bem&#8230; os artigos foram recuperados mas no entanto alguns links deixaram de funcionar e como a sua ativacao levaria bastante tempo eu colocarei os links [...]]]></description>
				<content:encoded><![CDATA[<p>Como alguns devem ter notado, o meu blog foi alvo de um ataque atraves de uma plugin com uma falha de seguranca e todos os dados do blog foram perdidos, bem&#8230; os artigos foram recuperados mas no entanto alguns links deixaram de funcionar e como a sua ativacao levaria bastante tempo eu colocarei os links a pedido.</p>
<p>Como recebi alguns comentarios a pedir os links para os tutoriais de AS3 e Flex, seguem eles aqui:</p>
<p>Adobe Flex (aka Apache Flex) a partir do zero:<br />
eBook Completo: <a href="http://msdevstudio.net/mywork/FlexTutor/Flex_Book_Part_1_2_3_4_5.pdf" target="_blank">http://msdevstudio.net/mywork/FlexTutor/Flex_Book_Part_1_2_3_4_5.pdf</a></p>
<p>As3 a partir do zero:<br />
Parte #1: <a href="http://msdevstudio.net/mywork/AS3Tutor/as3_book_parte_1.pdf" target="_blank">http://msdevstudio.net/mywork/AS3Tutor/as3_book_parte_1.pdf</a><br />
Parte #2 (resumo): <a href="http://msdevstudio.net/mywork/FlexTutor/Tutorial_AS3_parte_II_Resumed.pdf" target="_blank">http://msdevstudio.net/mywork/FlexTutor/Tutorial_AS3_parte_II_Resumed.pdf</a></p>
<p>Se precisarem de um qualquer outro link para download avisem.</p>
<p>Abraco.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.msdevstudio.net/2012/09/19/adobe-flex-a-partir-do-zero-as3-a-partir-do-zero/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>ISO 3166-1 Alpha 3 -&gt; Nome Inteiro</title>
		<link>http://blog.msdevstudio.net/2012/09/19/iso-3166-1-alpha-3-nome-inteiro/</link>
		<comments>http://blog.msdevstudio.net/2012/09/19/iso-3166-1-alpha-3-nome-inteiro/#comments</comments>
		<pubDate>Wed, 19 Sep 2012 14:32:42 +0000</pubDate>
		<dc:creator>Mário Santos</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.msdevstudio.net/?p=2247</guid>
		<description><![CDATA[Algo que me foi necessario procurar para um projeto foi a transformacao de codigos ISO de paises (alpha 3) no nome do pais completo. Fica a dica da lista e de uma funcao bem simples de como os obter em javascript. function getCountryName(countryCode) { var countrys = [{countryCode: "AFG", countryName: "Afghanistan"},{countryCode: "ALA", countryName: "Aland Islands"},{countryCode: [...]]]></description>
				<content:encoded><![CDATA[<p>Algo que me foi necessario procurar para um projeto foi a transformacao de codigos ISO de paises (alpha 3) no nome do pais completo. Fica a dica da lista e de uma funcao bem simples de como os obter em javascript.</p>
<pre class="brush:javascript">function getCountryName(countryCode) {
var countrys = [{countryCode: "AFG", countryName: "Afghanistan"},{countryCode: "ALA", countryName: "Aland Islands"},{countryCode: "ALB", countryName: "Albania"},{countryCode: "DZA", countryName: "Algeria"},{countryCode: "ASM", countryName: "American Samoa"},{countryCode: "AND", countryName: "Andorra"},{countryCode: "AGO", countryName: "Angola"},{countryCode: "AIA", countryName: "Anguilla"},{countryCode: "ATA", countryName: "Antarctica"},{countryCode: "ATG", countryName: "Antigua and Barbuda"},{countryCode: "ARG", countryName: "Argentina"},{countryCode: "ARM", countryName: "Armenia"},{countryCode: "ABW", countryName: "Aruba"},{countryCode: "AUS", countryName: "Australia"},{countryCode: "AUT", countryName: "Austria"},{countryCode: "AZE", countryName: "Azerbaijan"},{countryCode: "BHS", countryName: "Bahamas"},{countryCode: "BHR", countryName: "Bahrain"},{countryCode: "BGD", countryName: "Bangladesh"},{countryCode: "BRB", countryName: "Barbados"},{countryCode: "BLR", countryName: "Belarus"},{countryCode: "BEL", countryName: "Belgium"},{countryCode: "BLZ", countryName: "Belize"},{countryCode: "BEN", countryName: "Benin"},{countryCode: "BMU", countryName: "Bermuda"},{countryCode: "BTN", countryName: "Bhutan"},{countryCode: "BOL", countryName: "Bolivia, Plurinational State of"},{countryCode: "BES", countryName: "Bonaire, Sint Eustatius and Saba"},{countryCode: "BIH", countryName: "Bosnia and Herzegovina"},{countryCode: "BWA", countryName: "Botswana"},{countryCode: "BVT", countryName: "Bouvet Island"},{countryCode: "BRA", countryName: "Brazil"},{countryCode: "IOT", countryName: "British Indian Ocean Territory"},{countryCode: "BRN", countryName: "Brunei Darussalam"},{countryCode: "BGR", countryName: "Bulgaria"},{countryCode: "BFA", countryName: "Burkina Faso"},{countryCode: "BDI", countryName: "Burundi"},{countryCode: "KHM", countryName: "Cambodia"},{countryCode: "CMR", countryName: "Cameroon"},{countryCode: "CAN", countryName: "Canada"},{countryCode: "CPV", countryName: "Cape Verde"},{countryCode: "CYM", countryName: "Cayman Islands"},{countryCode: "CAF", countryName: "Central African Republic"},{countryCode: "TCD", countryName: "Chad"},{countryCode: "CHL", countryName: "Chile"},{countryCode: "CHN", countryName: "China"},{countryCode: "CXR", countryName: "Christmas Island"},{countryCode: "CCK", countryName: "Cocos (Keeling) Islands"},{countryCode: "COL", countryName: "Colombia"},{countryCode: "COM", countryName: "Comoros"},{countryCode: "COG", countryName: "Congo"},{countryCode: "COD", countryName: "Congo, the Democratic Republic of the"},{countryCode: "COK", countryName: "Cook Islands"},{countryCode: "CRI", countryName: "Costa Rica"},{countryCode: "CIV", countryName: "Cote d'Ivoire"},{countryCode: "HRV", countryName: "Croatia"},{countryCode: "CUB", countryName: "Cuba"},{countryCode: "CUW", countryName: "Curacao"},{countryCode: "CYP", countryName: "Cyprus"},{countryCode: "CZE", countryName: "Czech Republic"},{countryCode: "DNK", countryName: "Denmark"},{countryCode: "DJI", countryName: "Djibouti"},{countryCode: "DMA", countryName: "Dominica"},{countryCode: "DOM", countryName: "", countryName: "Dominican Republic"},{countryCode: "ECU", countryName: "", countryName: "Ecuador"},{countryCode: "EGY", countryName: "", countryName: "Egypt"},{countryCode: "SLV", countryName: "", countryName: "El Salvador"},{countryCode: "GNQ", countryName: "", countryName: "Equatorial Guinea"},{countryCode: "ERI", countryName: "", countryName: "Eritrea"},{countryCode: "EST", countryName: "", countryName: "Estonia"},{countryCode: "ETH", countryName: "", countryName: "Ethiopia"},{countryCode: "FLK", countryName: "", countryName: "Falkland Islands (Malvinas)"},{countryCode: "FRO", countryName: "", countryName: "Faroe Islands"},{countryCode: "FJI", countryName: "", countryName: "Fiji"},{countryCode: "FIN", countryName: "", countryName: "Finland"},{countryCode: "FRA", countryName: "", countryName: "France"},{countryCode: "GUF", countryName: "", countryName: "French Guiana"},{countryCode: "PYF", countryName: "", countryName: "French Polynesia"},{countryCode: "ATF", countryName: "", countryName: "French Southern Territories"},{countryCode: "GAB", countryName: "", countryName: "Gabon"},{countryCode: "GMB", countryName: "Gambia"},{countryCode: "GEO", countryName: "Georgia"},{countryCode: "DEU", countryName: "Germany"},{countryCode: "GHA", countryName: "Ghana"},{countryCode: "GIB", countryName: "Gibraltar"},{countryCode: "GRC", countryName: "Greece"},{countryCode: "GRL", countryName: "Greenland"},{countryCode: "GRD", countryName: "Grenada"},{countryCode: "GLP", countryName: "Guadeloupe"},{countryCode: "GUM", countryName: "Guam"},{countryCode: "GTM", countryName: "Guatemala"},{countryCode: "GGY", countryName: "Guernsey"},{countryCode: "GIN", countryName: "Guinea"},{countryCode: "GNB", countryName: "Guinea-Bissau"},{countryCode: "GUY", countryName: "Guyana"},{countryCode: "HTI", countryName: "Haiti"},{countryCode: "HMD", countryName: "Heard Island and McDonald Islands"},{countryCode: "VAT", countryName: "Holy See (Vatican City State)"},{countryCode: "HND", countryName: "Honduras"},{countryCode: "HKG", countryName: "Hong Kong"},{countryCode: "HUN", countryName: "Hungary"},{countryCode: "ISL", countryName: "Iceland"},{countryCode: "IND", countryName: "India"},{countryCode: "IDN", countryName: "Indonesia"},{countryCode: "IRN", countryName: "Iran, Islamic Republic of"},{countryCode: "IRQ", countryName: "Iraq"},{countryCode: "IRL", countryName: "Ireland"},{countryCode: "IMN", countryName: "Isle of Man"},{countryCode: "ISR", countryName: "Israel"},{countryCode: "ITA", countryName: "Italy"},{countryCode: "JAM", countryName: "Jamaica"},{countryCode: "JPN", countryName: "Japan"},{countryCode: "JRE", countryName: "Jersey"},{countryCode: "JOR", countryName: "Jordan"},{countryCode: "KAZ", countryName: "Kazakhstan"},{countryCode: "KEN", countryName: "Kenya"},{countryCode: "KIR", countryName: "Kiribati"},{countryCode: "PRK", countryName: "Korea, Democratic People's Republic of"},{countryCode: "KOR", countryName: "Korea, Republic of"},{countryCode: "KWT", countryName: "Kuwait"},{countryCode: "KGZ", countryName: "Kyrgyzstan"},{countryCode: "LAO", countryName: "Lao People's Democratic Republic"},{countryCode: "LVA", countryName: "Latvia"},{countryCode: "LBN", countryName: "Lebanon"},{countryCode: "LSO", countryName: "Lesotho"},{countryCode: "LBR", countryName: "Liberia"},{countryCode: "LBY", countryName: "Libya"},{countryCode: "LIE", countryName: "Liechtenstein"},{countryCode: "LTU", countryName: "Lithuania"},{countryCode: "LUX", countryName: "Luxembourg"},{countryCode: "MAC", countryName: "Macao"},{countryCode: "MKD", countryName: "Macedonia, the Former Yugoslav Republic of"},{countryCode: "MDG", countryName: "Madagascar"},{countryCode: "MWI", countryName: "Malawi"},{countryCode: "MYS", countryName: "Malaysia"},{countryCode: "MDV", countryName: "Maldives"},{countryCode: "MLI", countryName: "Mali"},{countryCode: "MLT", countryName: "Malta"},{countryCode: "MHL", countryName: "Marshall Islands"},{countryCode: "MTQ", countryName: "Martinique"},{countryCode: "MRT", countryName: "Mauritania"},{countryCode: "MUS", countryName: "Mauritius"},{countryCode: "MYT", countryName: "Mayotte"},{countryCode: "MEX", countryName: "Mexico"},{countryCode: "FSM", countryName: "Micronesia, Federated States of"},{countryCode: "MDA", countryName: "Moldova, Republic of"},{countryCode: "MCO", countryName: "Monaco"},{countryCode: "MNG", countryName: "Mongolia"},{countryCode: "MNE", countryName: "Montenegro"},{countryCode: "MSR", countryName: "Montserrat"},{countryCode: "MAR", countryName: "Morocco"},{countryCode: "MOZ", countryName: "Mozambique"},{countryCode: "MMR", countryName: "Myanmar"},{countryCode: "NAM", countryName: "Namibia"},{countryCode: "NRU", countryName: "Nauru"},{countryCode: "NPL", countryName: "Nepal"},{countryCode: "NLD", countryName: "Netherlands"},{countryCode: "NCL", countryName: "New Caledonia"},{countryCode: "NZL", countryName: "New Zealand"},{countryCode: "NIC", countryName: "Nicaragua"},{countryCode: "NER", countryName: "Niger"},{countryCode: "NGA", countryName: "Nigeria"},{countryCode: "NIU", countryName: "Niue"},{countryCode: "NFK", countryName: "Norfolk Island"},{countryCode: "MNP", countryName: "Northern Mariana Islands"},{countryCode: "NOR", countryName: "Norway"},{countryCode: "OMN", countryName: "Oman"},{countryCode: "PAK", countryName: "Pakistan"},{countryCode: "PLW", countryName: "Palau"},{countryCode: "PSE", countryName: "Palestinian Territory, Occupied"},{countryCode: "PAN", countryName: "Panama"},{countryCode: "PNG", countryName: "Papua New Guinea"},{countryCode: "PRY", countryName: "Paraguay"},{countryCode: "PER", countryName: "Peru"},{countryCode: "PHL", countryName: "Philippines"},{countryCode: "PCN", countryName: "Pitcairn"},{countryCode: "POL", countryName: "Poland"},{countryCode: "PRT", countryName: "Portugal"},{countryCode: "PRI", countryName: "Puerto Rico"},{countryCode: "QAT", countryName: "Qatar"},{countryCode: "REU", countryName: "Reunion"},{countryCode: "ROU", countryName: "Romania"},{countryCode: "RUS", countryName: "Russian Federation"},{countryCode: "RWA", countryName: "Rwanda"},{countryCode: "BLM", countryName: "Saint Barthelemy"},{countryCode: "SHN", countryName: "Saint Helena, Ascension and Tristan da Cunha"},{countryCode: "KNA", countryName: "Saint Kitts and Nevis"},{countryCode: "LCA", countryName: "Saint Lucia"},{countryCode: "MAF", countryName: "Saint Martin (French Part)"},{countryCode: "SPM", countryName: "Saint Pierre and Miquelon"},{countryCode: "VCT", countryName: "Saint Vincent and the Grenadines"},{countryCode: "WSM", countryName: "Samoa"},{countryCode: "SMR", countryName: "San Marino"},{countryCode: "STP", countryName: "Sao Tome and Principe"},{countryCode: "SAU", countryName: "Saudi Arabia"},{countryCode: "SEN", countryName: "Senegal"},{countryCode: "SRB", countryName: "Serbia"},{countryCode: "SYC", countryName: "Seychelles"},{countryCode: "SLE", countryName: "Sierra Leone"},{countryCode: "SGP", countryName: "Singapore"},{countryCode: "SXM", countryName: "Sint Maarten (Dutch Part)"},{countryCode: "SVK", countryName: "Slovakia"},{countryCode: "SVN", countryName: "Slovenia"},{countryCode: "SLB", countryName: "Solomon Islands"},{countryCode: "SOM", countryName: "Somalia"},{countryCode: "ZAF", countryName: "South Africa"},{countryCode: "SGS", countryName: "South Georgia and the South Sandwich Islands"},{countryCode: "SSD", countryName: "South Sudan"},{countryCode: "ESP", countryName: "Spain"},{countryCode: "LKA", countryName: "Sri Lanka"},{countryCode: "SDN", countryName: "Sudan"},{countryCode: "SUR", countryName: "Suriname"},{countryCode: "SJM", countryName: "Svalbard and Jan Mayen"},{countryCode: "SWZ", countryName: "Swaziland"},{countryCode: "SWE", countryName: "Sweden"},{countryCode: "CHE", countryName: "Switzerland"},{countryCode: "SYR", countryName: "Syrian Arab Republic"},{countryCode: "TWN", countryName: "Taiwan, Province of China"},{countryCode: "TJK", countryName: "Tajikistan"},{countryCode: "TZA", countryName: "Tanzania, United Republic of"},{countryCode: "THA", countryName: "Thailand"},{countryCode: "TLS", countryName: "Timor-Leste"},{countryCode: "TGO", countryName: "Togo"},{countryCode: "TKL", countryName: "Tokelau"},{countryCode: "TON", countryName: "Tonga"},{countryCode: "TTO", countryName: "Trinidad and Tobago"},{countryCode: "TUN", countryName: "Tunisia"},{countryCode: "TUR", countryName: "Turkey"},{countryCode: "TKM", countryName: "Turkmenistan"},{countryCode: "TCA", countryName: "Turks and Caicos Islands"},{countryCode: "TUV", countryName: "Tuvalu"},{countryCode: "UGA", countryName: "Uganda"},{countryCode: "UKR", countryName: "Ukraine"},{countryCode: "ARE", countryName: "United Arab Emirates"},{countryCode: "GBR", countryName: "United Kingdom"},{countryCode: "USA", countryName: "United States"},{countryCode: "UMI", countryName: "United States Minor Outlying Islands"},{countryCode: "URY", countryName: "Uruguay"},{countryCode: "UZB", countryName: "Uzbekistan"},{countryCode: "VUT", countryName: "Vanuatu"},{countryCode: "VEN", countryName: "Venezuela, Bolivarian Republic of"},{countryCode: "VNM", countryName: "Viet Nam"},{countryCode: "VGB", countryName: "Virgin Islands, British"},{countryCode: "VIR", countryName: "Virgin Islands, U.S."},{countryCode: "WLF", countryName: "Wallis and Futuna"},{countryCode: "ESH", countryName: "Western Sahara"},{countryCode: "YEM", countryName: "Yemen"},{countryCode: "ZMB", countryName: "Zambia"},{countryCode: "ZWE", countryName: "Zimbabwe"}];
for(var k=0; k&lt;countrys.length; k++) {
 if(countrys[k].countryCode == countryCode) return countrys[k].countryName;
}
 return countryCode;
}</pre>
<p>Para usar basta simplesmente chamar a funcao indicando o codigo alpha 3:</p>
<pre class="brush:javascript">getCountryName("FRA"); //France
getCountryName("PRT"); //Portugal
getCountryName("BRA"); //Brazil</pre>
<p>Simples e rapido.<br />
Abraco.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.msdevstudio.net/2012/09/19/iso-3166-1-alpha-3-nome-inteiro/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Messi &#8211; Tao bom quanto o jogador :)</title>
		<link>http://blog.msdevstudio.net/2012/07/30/messi-tao-bom-quanto-o-jogador/</link>
		<comments>http://blog.msdevstudio.net/2012/07/30/messi-tao-bom-quanto-o-jogador/#comments</comments>
		<pubDate>Mon, 30 Jul 2012 12:53:56 +0000</pubDate>
		<dc:creator>Mário Santos</dc:creator>
				<category><![CDATA[HTML, XHTML, CSS, Java Script]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[jQuery Mobile]]></category>
		<category><![CDATA[jQuery Plugins]]></category>

		<guid isPermaLink="false">http://blog.msdevstudio.net/?p=2241</guid>
		<description><![CDATA[Com certeza já precisou algum dia de um popup em suas aplicações. Aqui segue mais um pautado pela simplicidade, facilidade de uso e de fácil personalização. Messi: http://marcosesperon.es/apps/messi/ Segue o twitter do autor para updates on-the-fly: @marcosesperon Cumps.]]></description>
				<content:encoded><![CDATA[<p>Com certeza já precisou algum dia de um popup em suas aplicações. Aqui segue mais um pautado pela simplicidade, facilidade de uso e de fácil personalização.</p>
<p>Messi: http://marcosesperon.es/apps/messi/</p>
<p>Segue o twitter do autor para updates on-the-fly: <a href="http://twitter.com/marcosesperon" target="_blank">@marcosesperon</a></p>
<p>Cumps.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.msdevstudio.net/2012/07/30/messi-tao-bom-quanto-o-jogador/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>HTML / CSS3 &#8211; Smartphone and Tablet Media Query</title>
		<link>http://blog.msdevstudio.net/2012/07/24/html-css3-smartphone-and-tablet-media-query/</link>
		<comments>http://blog.msdevstudio.net/2012/07/24/html-css3-smartphone-and-tablet-media-query/#comments</comments>
		<pubDate>Tue, 24 Jul 2012 11:14:20 +0000</pubDate>
		<dc:creator>Mário Santos</dc:creator>
				<category><![CDATA[HTML, XHTML, CSS, Java Script]]></category>
		<category><![CDATA[jQuery Mobile]]></category>

		<guid isPermaLink="false">http://blog.msdevstudio.net/?p=2219</guid>
		<description><![CDATA[Quem trabalha com mobile facilmente se depara com a necessidade de usar diferentes condições css para determinados ecrãs, e ai com uma simples procura encontram as media query, uma pequena instrução css que permite limitar a aplicação de determinadas declarações css se os ecrãs não cumprirem as condição de tamanhos e orientações. Fica aqui uma [...]]]></description>
				<content:encoded><![CDATA[<p>Quem trabalha com mobile facilmente se depara com a necessidade de usar diferentes condições css para determinados ecrãs, e ai com uma simples procura encontram as media query, uma pequena instrução css que permite limitar a aplicação de determinadas declarações css se os ecrãs não cumprirem as condição de tamanhos e orientações.</p>
<p>Fica aqui uma lista que me foi muito útil para determinar certos ecrãs e aplicar as devidas declarações css.</p>
<p><a href="http://nmsdvid.com/snippets/">http://nmsdvid.com/snippets/</a></p>
<p>Nota, As media query sao apenas suportadas por browsers que sejam capazes de processar CSS3, caso necessitem de verificar se o browser tem suporte, podem usar o jQuery Mobile (<a href="http://jquerymobile.com/test/docs/api/mediahelpers.html">http://jquerymobile.com/test/docs/api/mediahelpers.html</a>) ou o Modernizr (<a href="http://modernizr.com/docs/#mq">http://modernizr.com/docs/#mq</a>).</p>
<p>Cumps.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.msdevstudio.net/2012/07/24/html-css3-smartphone-and-tablet-media-query/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>HTML &#8211; jQuery Notification Plugin &#8211; Noty</title>
		<link>http://blog.msdevstudio.net/2012/07/24/html-plugin-notification/</link>
		<comments>http://blog.msdevstudio.net/2012/07/24/html-plugin-notification/#comments</comments>
		<pubDate>Tue, 24 Jul 2012 08:21:59 +0000</pubDate>
		<dc:creator>Mário Santos</dc:creator>
				<category><![CDATA[HTML, XHTML, CSS, Java Script]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[jQuery Mobile]]></category>
		<category><![CDATA[jQuery Plugins]]></category>

		<guid isPermaLink="false">http://blog.msdevstudio.net/?p=2216</guid>
		<description><![CDATA[Segue a dica, Uma plugin bem interessante e útil para apresentação de notificações. http://needim.github.com/noty/]]></description>
				<content:encoded><![CDATA[<p>Segue a dica, Uma plugin bem interessante e útil para apresentação de notificações.</p>
<p><img class="alignnone" title="Noty v2" src="http://needim.github.com/noty/img/noty-v2-logo.png" alt="" width="242" height="85" /></p>
<p><a href="http://needim.github.com/noty/">http://needim.github.com/noty/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.msdevstudio.net/2012/07/24/html-plugin-notification/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Web App &#8211; Como esconder o teclado do iPad / iOS</title>
		<link>http://blog.msdevstudio.net/2012/07/19/web-app-como-esconder-o-teclado-do-ipad-ios/</link>
		<comments>http://blog.msdevstudio.net/2012/07/19/web-app-como-esconder-o-teclado-do-ipad-ios/#comments</comments>
		<pubDate>Thu, 19 Jul 2012 14:09:34 +0000</pubDate>
		<dc:creator>Mário Santos</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.msdevstudio.net/?p=2212</guid>
		<description><![CDATA[Problema: O utilizador pode clicar no Return / Enter do teclado e podemos receber esse enter num campo de texto, mas teriamos sempre o teclado visivel. Segue a dica: Quando quiser esconder o teclado (input / textarea): document.activeElement.blur(); $(&#8220;input&#8221;).blur(); Cumps]]></description>
				<content:encoded><![CDATA[<p>Problema:<br />
O utilizador pode clicar no Return / Enter do teclado e podemos receber esse enter num campo de texto, mas teriamos sempre o teclado visivel.</p>
<p>Segue a dica:<br />
Quando quiser esconder o teclado (input / textarea):</p>
<blockquote><p>document.activeElement.blur();<br />
$(&#8220;input&#8221;).blur();</p></blockquote>
<p>Cumps</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.msdevstudio.net/2012/07/19/web-app-como-esconder-o-teclado-do-ipad-ios/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Apache Flex &#124; Possivel interesse em novo projeto</title>
		<link>http://blog.msdevstudio.net/2012/02/07/apache-flex-possivel-interesse-em-novo-projeto/</link>
		<comments>http://blog.msdevstudio.net/2012/02/07/apache-flex-possivel-interesse-em-novo-projeto/#comments</comments>
		<pubDate>Tue, 07 Feb 2012 18:30:10 +0000</pubDate>
		<dc:creator>Mário Santos</dc:creator>
				<category><![CDATA[Flex]]></category>
		<category><![CDATA[RIA's Geral]]></category>
		<category><![CDATA[apache flex]]></category>
		<category><![CDATA[freelancing]]></category>
		<category><![CDATA[projeto]]></category>

		<guid isPermaLink="false">http://blog.msdevstudio.net/?p=2192</guid>
		<description><![CDATA[Caros Leitores, segue um comentário em meu blog que alguem que procura um desenvolver Flex para um novo projeto. Segue o comentário, &#160; Olá! Preciso de um profissional com experiência em Adobe Flex para um projeto de cliente. Precisa ter portfólio na área e já ter feito algum trabalho de edição de imagem com Flex. [...]]]></description>
				<content:encoded><![CDATA[<p>Caros Leitores, segue um comentário em meu blog que alguem que procura um desenvolver Flex para um novo projeto.</p>
<p>Segue o comentário,</p>
<p>&nbsp;</p>
<blockquote><p><em>Olá! Preciso de um profissional com experiência em Adobe Flex para um projeto de cliente. Precisa ter portfólio na área e já ter feito algum trabalho de edição de imagem com Flex.</em></p>
<p><em>Quem tiver interesse, acesse meu site e me mande um email.</em></p>
<p><em>Obrigado.</em></p>
<p><em>Site: <a href="http://www.mmsweb.com.br/">http://www.mmsweb.com.br/</a></em></p></blockquote>
<p>&nbsp;</p>
<p>Abraço.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.msdevstudio.net/2012/02/07/apache-flex-possivel-interesse-em-novo-projeto/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>2012 esta ai&#8230;</title>
		<link>http://blog.msdevstudio.net/2011/12/29/2012-esta-ai/</link>
		<comments>http://blog.msdevstudio.net/2011/12/29/2012-esta-ai/#comments</comments>
		<pubDate>Thu, 29 Dec 2011 11:23:43 +0000</pubDate>
		<dc:creator>Mário Santos</dc:creator>
				<category><![CDATA[Notícias]]></category>

		<guid isPermaLink="false">http://blog.msdevstudio.net/?p=2185</guid>
		<description><![CDATA[Bom, o novo ano esta ai à porta e muita gente trata de deixar os seus pensamentos e projectos para o novo ano, é interessante ver chegar ao final do ano e perceber se todos os objectivos definidos para este ano foram atingidos, claro que isso não influencia em nada a nossa vida mas o sentimento de missão cumprida e desafio é sempre muito [...]]]></description>
				<content:encoded><![CDATA[<p>Bom, o novo ano esta ai à porta e muita gente trata de deixar os seus pensamentos e projectos para o novo ano, é interessante ver chegar ao final do ano e perceber se todos os objectivos definidos para este ano foram atingidos, claro que isso não influencia em nada a nossa vida mas o sentimento de missão cumprida e desafio é sempre muito saudável.</p>
<p>No final do ano passado tinha estipulado como metas o aumento de conhecimento de Java, C#, Postgress e claro, Flex 4. Em todos eles consegui alguns avanços o que me deixou com um otimo espectro de linguagens, mas infelizmente não consegui tempo para dar uma olhada  no FMS nem nas bases de dados Oracle mas quem sabe para o próximo ano o consigo fazer.</p>
<p>Este ano que passou, trouxe grandes novidades, muitas surpresas e algumas desilusões, desde o inicio da penetração do flash para mobile nos smartphones ate ao seu abandono. O grande avanço da plataforma Flash para mobile também marcou o mercado, como o deploy de aplicações em flash/flex para markets mobile, mas ao mesmo tempo mais uma triste noticia que deixou muita gente surpresa, a Adobe acabava por abandonar o desenvolvimento do Flex, concentrando-se nas tecnologias emergentes como o HTML5 e jQuery Mobile.</p>
<p>Sem esquecer da morte do visionário Steve Jobs, que apesar de não ser Apple fan, reconheço que ele foi um &#8220;game changer&#8221; tanto na própria Apple, como no mundo da tecnologia, principalmente mobile.</p>
<p>O final deste ano também me fez mudar de ambiente de trabalho, juntando-me a um amigo de longa data numa empresa onde acabei por iniciar-me no mundo mobile (HTML5/jQuery Mobile) mesmo ainda antes do abandono do Flash Mobile e do Flex SDK o que acabou por ser muito curioso. Claramente ainda muito pouco maduras, ambas as tecnologias (HTML5 / jQuery Mobile) ainda mostram muitos pontos fracos principalmente a fragmentação e as diferentes/próprias implementações de variados elementos não compatíveis com os padrões (w3) faz com que o desenvolvimento se torne mais dispendioso. Se contar com a falhas de performance em mobile, falta de componentes, fracos comportamentos, muitos problemas de compatibilidade cross-browser e conhecendo o Flex como conheço, dificilmente nos próximos 3 a 5 anos o flex será substituído pelo HTML5 como muitos o afirmam.</p>
<p>Bom, neste novo ano muitos desafios se avizinham nesta nova etapa do meu trabalho principalmente a nível de aprendizagem e desenvolvimento em outras tecnologias. Pensado que o HTML5 / Mobile vai ser um grande foco, será com certeza uma grande experiência e enriquecimento para mim.</p>
<p>Finalmente, 2011 também ficou marcado por cada vez menos tempo disponível para actualizar o blog, mas sempre que possível la fui colocando um ou outro artigo. Sera algo que também quero mudar no próximo ano, dedicando um pouco mais de tempo a ele.</p>
<p>Bom, resta-me apenas desejar-vos um otimo 2012 com muito sucesso pessoal!</p>
<p>Um grande abraço.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.msdevstudio.net/2011/12/29/2012-esta-ai/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SIGCOND, Gestão de forma inteligente. (Flex)</title>
		<link>http://blog.msdevstudio.net/2011/10/29/sigcond-gestao-de-forma-inteligente-flex/</link>
		<comments>http://blog.msdevstudio.net/2011/10/29/sigcond-gestao-de-forma-inteligente-flex/#comments</comments>
		<pubDate>Sat, 29 Oct 2011 07:08:13 +0000</pubDate>
		<dc:creator>Mário Santos</dc:creator>
				<category><![CDATA[Action Script & MXML]]></category>
		<category><![CDATA[Flash Builder 4]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Media Server]]></category>
		<category><![CDATA[red5]]></category>
		<category><![CDATA[RIA's Geral]]></category>
		<category><![CDATA[Tecnologia]]></category>
		<category><![CDATA[as3]]></category>
		<category><![CDATA[condominios]]></category>
		<category><![CDATA[condominos]]></category>
		<category><![CDATA[gestão]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[sigcond]]></category>

		<guid isPermaLink="false">http://blog.msdevstudio.net/?p=2167</guid>
		<description><![CDATA[Olá caros leitores, infelizmente tenho andado meio afastado do blog devido a algumas mudanças na vida profissional, mas também por falta de tempo. Mas bom, hoje venho falar de um projecto que elaborei antes desta mudança profissional, e que foi bem interessante não só a nivel tecnológico, mas também a nivel funcional. O seu nome [...]]]></description>
				<content:encoded><![CDATA[<p>Olá caros leitores, infelizmente tenho andado meio afastado do blog devido a algumas mudanças na vida profissional, mas também por falta de tempo. Mas bom, hoje venho falar de um projecto que elaborei antes desta mudança profissional, e que foi bem interessante não só a nivel tecnológico, mas também a nivel funcional.</p>
<p>O seu nome é SIGCOND, um sistema de gestão de condomínios muito completo. Todo o sistema foi elaborado em Adobe Flex 4, com recurso ao ZendFramework, MySql e PHP mas não se limitou a estas tecnologias, já que também conta com um sistema interno de chat / conferencia feito com recurso ao Red5 Media Server / Java. Conta com variadas áreas, 4 niveis de utilização: Super Administrador, Administrador de Condomínio Master, Administrador de condomínio e Condómino. Cada um deles apenas pode aceder a algumas funções e menus da aplicação devido a um sistema de UAC implementado.</p>
<p>Foram também integradas algumas API&#8217;s que tornam a aplicação muito funcional, de entre as quais:</p>
<ul>
<li><a href="http://code.google.com/apis/chart/" target="_blank">Google Charts API</a>, permitindo assim criar relatórios de consultas com gráficos tornando os relatórios bem mais agradaveis.</li>
<li><a href="http://www.clickatell.com" target="_blank">Clickatell SMS API</a>, permite que o sistema possa enviar notificações por SMS para os telefones dos condóminios e administradores, tornando a troca de informação mais directa entre os administradores e o sistema. Esta API é implementada de uma forma totalmente automática, já que as notificações sao apenas configuradas (activas/inactivas) e o sistema encarrega-se de enviar as devidas notificações consoante várias operações iniciadas por parte do utilizador, ou automaticamente por parte do sistema. Estas notificações incluem falta de pagamentos, agendamentos, notas, reuniões de condomínios, lançamento de quotas / facturas, etc.</li>
<li><a href="http://www.easypay.pt/pt" target="_blank">EasyPay &#8211; Gateway MB</a>. Esta API torna o sistema ainda mais funcional, permitindo o lançamento em tempo real de Facturas com uma referencia MB / Home-banking que imediatamente fica disponível para pagamento. Sendo que os administradores podem pagar o aluguer da plataforma e os condóminos as suas quotas / facturas sem sair de casa. Assim que o cliente/condómino paga a factura numa caixa electrónica, ponto de pagamento ou home-banking o sistema é de imediato notificado e efectua o fecho do registo a pagamento.</li>
</ul>
<div>O sistema conta com vários recursos automatizados que são efectuados diariamente para criar e lançar quotas, criar relatórios, notificar faltas de pagamento e prazos, bloquear contas, lançar facturas, etc&#8230;</div>
<div>Internamente também poderá encontrar um sistema de agendas, troca de mensagens privadas, chat de texto, video e audio em tempo real em várias salas, além do chat privado entre a administração e um condómino ou com o proprio suporte da aplicação. Existe ainda um fórum interno para dúvidas, centro de documentos onde podem encontrar documentos pessoais, ou administrativos, calculadora, calendario / agenda, etc.. Bom, convido-vos a lerem um pouco mais sobre a parte comercial do sistema escrita pelo próprio proprietário do sistema, Fernando Mendes, aqui em baixo. De notar que ao fundo do artigo pode encontrar dados para acederem ao sistema em modo de teste.</div>
<div>
<p><img class="aligncenter size-medium wp-image-2168" src="http://blog.msdevstudio.net/wp-content/uploads/2011/10/sigcond-300x166.png" alt="" width="300" height="166" /></p>
<p align="center"><em><strong>Uma aposta na tecnologia </strong></em></p>
<p>&nbsp;</p>
<p><em>O presente projecto tem como principal objectivo a disponibilização na Internet de uma plataforma que contém um conjunto de recursos necessários para a gestão de condomínios. O público-alvo reporta-se a administradores de condomínio, condóminos e empresas de administração de condomínios.</em></p>
<p><em>O SIGCOND diferencia-se pelo facto de ser totalmente online, e desenvolvido de forma a dinamizar a relação entre condóminos / administrador. Com esta plataforma, procuram-se colmatar eventuais dificuldades de comunicação, transparência e rigor que, na maior parte das vezes, se manifestam entre a administração e os condóminos, proporcionando, simultaneamente, uma gestão simples, automatizada e integrada de todo o processo.</em></p>
<p><em>O SIGCOND permite realizar a contabilidade, controlo, suporte e automatização das tarefas inerentes à actividade referida, bem como motivar a uma maior participação entre os agentes envolvidos.</em></p>
<p><em>O desenvolvimento desta nova solução incorpora as questões político legais nacionais em vigor, referentes a este âmbito, e as que são possíveis de enquadrar na aplicação.</em></p>
<p><em>No sentido de uma melhor compreensão dos conteúdos contabilísticos, para além dos dados numéricos disponíveis, existem também painéis de bordo com a disponibilização gráfica dos valores mais pertinentes, o que permite uma consulta mais intuitiva da informação por parte dos condóminos.</em></p>
<p><em>Como referido, e para dinamizar a relação condóminos / administrador, foi criado um módulo de comunicação (um fórum e um chat interno ao condomínio), facilitando desta forma a interacção entre aqueles, o que representa uma mais-valia neste projecto.</em></p>
</div>
<div><em>O acesso é realizado através de um portal desenvolvido para o efeito e que permite ainda a colocação de publicidade de empresas relacionadas com esta actividade.</em></div>
<div>
<p><em>Com a utilização do SIGCOND, o público-alvo pode usufruir de benefícios relativamente à concorrência, em particular:</em></p>
<p>&nbsp;</p>
<ul>
<li><em> Disponibilização da solução totalmente online, sem necessidade de instalação de software adicional.</em></li>
<li><em>Pagamentos disponíveis por MB.</em></li>
<li><em>Notificações por SMS.</em></li>
<li><em>Possibilidade de escriturar toda a contabilidade do condomínio, permitindo ainda uma visão da variação de despesas ou receitas, através de painéis de bordo, sendo que os condóminos podem ter uma perspectiva dos dados “24 horas por dia”, o que se reflecte numa total transparência de processos.</em></li>
<li><em>Optimização de tarefas inerentes à actividade do administrador.</em></li>
<li><em>Envio automático de notificações de eventos (ex.: pagamentos de mensalidade em falta, convocatórias, entre outros).</em></li>
<li><em>Promoção da comunicação através de um conjunto de facilidades, nomeadamente, de um fórum de discussão para cada condomínio e da integração de chat / conferência em reuniões de condomínios.</em></li>
<li><em>Possibilidade de colocação de legislação referente aos condomínios num espaço partilhado online.</em></li>
<li><em>Custo reduzido de licenciamento.</em></li>
</ul>
<p>&nbsp;</p>
<p><em>Neste sentido, espera-se uma receptividade significativa da aplicação, dado que se oferece aos utilizadores uma alternativa que lhes possibilita uma redução de custos e de tempo na escrituração dos dados do seu condomínio com total transparência, o que se traduz, por outro lado, na possibilidade de retorno financeiro decorrente da exploração da solução.</em></p>
<p><em><strong>WebSite:</strong> <a href="http://www.sigcond.pt/">www.sigcond.pt</a>    <strong>Telf:</strong> +351 93 922 3808    <strong>Informações:</strong> <a href="mailto:info@sigcond.pt">info@sigcond.pt</a></em></p>
<p>Para acederem ao site em modo de demonstração, usem as seguintes informações:</p>
<p>http://gestao.sigcond.pt</p>
<p>User Condómino:<br />
USER: userdemo<br />
PASSWORD: demo</p>
<p>User administrador de condomínio:<br />
USER: demoadmin<br />
PASSWORD: demo</p>
<p>De notar que na versão demonstração muitas das opções estão bloqueadas, ou simplesmente nao estão visiveis. Para mais informações ou testar o sistema com dados reais e sem limitações entre em contacto com o email de informações:  <em><a href="mailto:info@sigcond.pt">info@sigcond.pt</a></em></p>
<p>Como o sistema ainda se encontra em fase inicial de testes podem encontrar alguns erros ou bugs, pelo que se encontrarem algum deixem os vossos comentarios.</p>
<p>Cumps.</p>
<p>&nbsp;</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://blog.msdevstudio.net/2011/10/29/sigcond-gestao-de-forma-inteligente-flex/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>RedeRIA Android &amp; iOS (quase).</title>
		<link>http://blog.msdevstudio.net/2011/08/26/rederia-android-ios-quase-publicacao/</link>
		<comments>http://blog.msdevstudio.net/2011/08/26/rederia-android-ios-quase-publicacao/#comments</comments>
		<pubDate>Fri, 26 Aug 2011 08:58:31 +0000</pubDate>
		<dc:creator>Mário Santos</dc:creator>
				<category><![CDATA[Action Script & MXML]]></category>
		<category><![CDATA[Flash Builder 4]]></category>
		<category><![CDATA[Mobile]]></category>
		<category><![CDATA[portfolio]]></category>
		<category><![CDATA[RIA's Geral]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[flash builder]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[ios]]></category>
		<category><![CDATA[publicação]]></category>

		<guid isPermaLink="false">http://blog.msdevstudio.net/?p=2152</guid>
		<description><![CDATA[Venho falar do projecto RedeRIA que se têm revelado um sucesso e conta já com mais de 50 autores e cerca de 2500 artigos sobre Ria&#8217;s. Devido a este sucesso decidi à algum tempo fazer uso da minha ferramenta de trabalho diária (Flash Builder) para criar uma aplicação para Android e iOS visto que já [...]]]></description>
				<content:encoded><![CDATA[<p>Venho falar do projecto <a href="http://rederia.net">RedeRIA </a>que se têm revelado um sucesso e conta já com mais de 50 autores e cerca de 2500 artigos sobre Ria&#8217;s. Devido a este sucesso decidi à algum tempo fazer uso da minha ferramenta de trabalho diária (Flash Builder) para criar uma aplicação para Android e iOS visto que já é possível isso muito facilmente. Vou falar um pouco da App criada tanto para Android disponível para download no market ou seguindo este link: <a href="https://market.android.com/details?id=air.com.msdevstudio.RedeRIA">https://market.android.com/details?id=air.com.msdevstudio.RedeRIA</a>, como para iOS. (Não publicada)</p>
<p>A aplicação foi criada com 2 layouts diferentes que são carregados consoante a plataforma (iOS e Android), e usa componentes nativos da framework flex, como o mobile view navigator e list, usando também um item render nessa lista, algo bem simples de fazer.</p>
<p>Para a listagem de artigos, carregados a partir do <a href="http://feeds.feedburner.com/msdevstudio/unxK">feed</a>, foi usada uma <a href="http://code.google.com/p/as3syndicationlib/">libraria</a> para ler e converter os feeds para objectos que são adicionados um arrayCollection  usado na lista. Já no caso dos autores, foi usada a <a href="http://msdevstudio.com/wpas3api/preview/">API AS3 do WordPress</a> que desenvolvi (podem ver a documentação <a href="http://msdevstudio.com/wpas3api/docs/">aqui</a>), que infelizmente ainda não consegui coloca-la publicamente disponível, mas em breve o farei. Usando apenas uma simples função: wpas3api.getAuthors() tive a listagem dos autores do blog e suas informações. Como o RedeRIA usa algumas plugins para gerir thumbnails e informações os autores, tive que fazer uma pequena alteração no &#8220;core&#8221; do XMLRPC Server do wordpress para devolver mais alguns campos já que por defeito o wordpress apenas devolve nome, id e login de cada autor.</p>
<p>De resto, foi só compilar a aplicação para ambos os markets.</p>
<p>Para o Android (muitooooo facil) foi só compilar com o certificado de assinatura de código, pagar os 25 USD para poder publicar e enviar o arquivo apk (ficando a conta de imediato activa) junto com uma pequena descrição e algumas imagens.</p>
<p>Já a brincadeira para a compilação par iOS foi bem mais complicada&#8230; alem de termos que gerar alguns certificados, temos que registar os nossos &#8220;testing&#8221; devices na area de developer da apple, criar os certificados de aprovisionamento, de aplicação e device para depois poder compilar o .ipa final com todos estes certificados para finalmente podermos testar a nossa aplicação no nosso device com drag-n-drop directo para o itunes (+syncronização). Complicado não? pois piora quando querem publicar a aplicação na apple store, pois precisam de repetir todo este processo de certificados, voltar a compilar a aplicação para terem o ipa final.</p>
<p>Voltamos ao site developer.apple.com (ah, pequeno detalhe, aqui pagamos 99 USD por ano para poder publicar app&#8217;s e que estive 2 semanas à espera da activação manual já que deu um erro na automática), fazemos o login no iTunes Connect e preenchemos os dados para publicar a nossa aplicação até que chegamos ao ultimo passo que é o envio do nosso ipa para aprovação; Uma estranha notícia: Não têm um mac? não pode publicar na apple store! WTF???<br />
Pois é, a única aplicação que permite o envio dos nossos ficheiros ipa para aprovação é o Application Loader que apenas têm uma versão para&#8230; MAC OS. Como no site não temos opção de fazer upload ficamos na mer**! Boa Apple!!</p>
<p>Resumindo, por enquanto menos uma app na apple store! (Engraçado que para pagar a anuidade pode ser feito até de um windows 95, agora publicar só com um MAC)</p>
<p>Seguem alguns screenshots da aplicação.</p>
<table width="100%" align="center">
<tbody>
<tr>
<td align="center" width="50%"><a href="http://blog.msdevstudio.net/wp-content/uploads/2011/08/ss-480-0-4.png"><img class="size-medium wp-image-2153 alignnone" title="ss-480-0-4" src="http://blog.msdevstudio.net/wp-content/uploads/2011/08/ss-480-0-4-180x300.png" alt="" width="180" height="300" /></a></td>
<td align="center" width="50%"><a href="http://blog.msdevstudio.net/wp-content/uploads/2011/08/ss-480-4-4.jpg"><img class="alignnone size-medium wp-image-2155" title="ss-480-4-4" src="http://blog.msdevstudio.net/wp-content/uploads/2011/08/ss-480-4-4-180x300.jpg" alt="" width="180" height="300" /></a></td>
</tr>
<tr>
<td align="center" width="50%"><a href="http://blog.msdevstudio.net/wp-content/uploads/2011/08/ss-480-5-4.jpg"><img class="alignnone size-medium wp-image-2156" title="ss-480-5-4" src="http://blog.msdevstudio.net/wp-content/uploads/2011/08/ss-480-5-4-180x300.jpg" alt="" width="180" height="300" /></a></td>
<td align="center" width="50%"><a href="http://blog.msdevstudio.net/wp-content/uploads/2011/08/ss-480-3-41.jpg"><img class="alignnone size-medium wp-image-2157" title="ss-480-3-4" src="http://blog.msdevstudio.net/wp-content/uploads/2011/08/ss-480-3-41-180x300.jpg" alt="" width="180" height="300" /></a></td>
</tr>
</tbody>
</table>
<p>&nbsp;</p>
<p>A aplicação foi bastante simples, não me demorou mais que umas horas a fazer e ficou bem agradavel, servindo como prova que o Flash Builder / Flex + AIR vieram para ficar na area do desenvolvimento mobile.</p>
<p>E você? ja testou algum projecto mobile feito em flex, e a aplicação RedeRIA Android, o que achou?</p>
<p>Abraço.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.msdevstudio.net/2011/08/26/rederia-android-ios-quase-publicacao/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
