miércoles, 25 de septiembre de 2013

Mirror your Android device's screen with Miracast (video) - CNET News

It shows how to connect your Android device to a TV even if your TV is not Miracast compatible. It uses a device named "NETGEAR" which is a little pricy (us$60) but it creates its own ad-hoc network so you won't use your Wireless network.  Mirror your Android device's screen with Miracast (video) - CNET News

martes, 24 de septiembre de 2013

Android Renderscript for all devices


RenderScript is a framework for running computationally intensive tasks at high performance on Android.

One of the requests most commonly from developers is to enable more devices to run the latest features of RenderScript. Over the past several releases of Android, we’ve added a ton of functionality to the RenderScript runtime, but the runtime's dependence on the core Android platform version has limited the range of devices that can support that new functionality. We’ve been working on a solution to this since last year, and we’re now ready to share it with all Android developers.

Today we're announcing a new RenderScript Support Library and updated SDK tools that together let you take advantage of RenderScript on plaform versions all the way back to Android 2.2 (Froyo).

  1. In your classes that use RenderScript, import the RenderScript Support Library from android.support.v8.renderscript. If you are already using native RenderScript, you can change your import from android.renderscript to android.support.v8.renderscript.
    import android.support.v8.renderscript.*;
  2. In your project.properties, make sure you’re targeting android-18 and add the following lines:
That’s it!

API and Implementation details

If you'd like to use RenderScript Support Library in your app, there are few things you should know:

  • First, the RenderScript Support Library supports almost all of the RenderScript API functions as the native API that's available in API level and higher. The one notable exception is that Allocation.USAGE_IO_INPUT and Allocation.USAGE_IO_OUTPUT are not currently available in the RenderScript Support Library.
  • Second, devices running Android 4.2 and earlier will always run their RenderScript applications on the CPU, while devices running Android 4.3 or later will run their RenderScript applications on whatever processors are available on that particular device. Because the Support Library versions of the scripts have to be precompiled to support all possible platforms, there is a performance hit when running the precompiled scripts compared to runtime compilation on Android 4.3 due to more restrictions on compiler optimizations.
Source: http://android-developers.blogspot.com.ar/2013/09/renderscript-in-android-support-library.html

Feedly (RSS Reader) con API propia

Feedly acaba de anunciar el lanzamiento de su API pública, que podrá ser utilizada por cualquier desarrollador de forma gratuita. La API de la empresa llevaba varios meses funcionando pero hasta el momento sólo podían acceder a ella una serie de apps privilegiadas como Nextgen Reader, Reeder o Press.
En el comunicado oficial Feedly dice que a través de la API los desarrolladores de apps y usuarios podrán sincronizar tanto los propios feeds como otras características más personales como pueden ser las categorías, los tags, etc. Toda la documentación relacionada con la API la podéis encontrar en este enlace.
Desde el cierre de Google Reader a principios de julio Feedly se ha convertido en el líder del sector de los lectores de RSS. A finales de mayo, mucho antes del cierre de Reader, Feedly tenía ya más de 12 millones de usuarios registrados; es muy probable que desde entonces ese número haya crecido exponencialmente y que el número de usuarios activos sea también importante. Una de las últimas novedades presentadas por la empresa fueron sus planes de pago que, a cambio de 45 dólares anuales o 5 mensuales, dan acceso a una serie de características adicionales.
Más información | Feedly

La noticia Después de meses de prueba Feedly lanza su API pública fue publicada originalmente en Genbeta por Jaime Novoa.

Windows 8 Fail for Email

I just bought a new laptop and it has Windows 8 as default OS. I tried to add some email accounts and all failed (very common thing for most users)

Try with your Google account: Failed because Google doesn't want to allow that so no matter how hard you tried, you won't be able (at least now they won't allow)

Then I tried to add my Godaddy login.secureserver.net account. Failed because Windows 8 does not accept POP accounts. You must have an IMAP available account but for doing that you need to go to your GoDaddy account and make some arrangements (and payments) before. Too much work if I know I have hundred of apps out there ready to make a fine work adding email accounts.

That's why you Ballmer are getting fired from Microsoft... Learn from experience, man...

miércoles, 18 de septiembre de 2013

Chromecast Hacking

Chromecast testing has revealed that it is a DIAL device and sniffing shows several interesting commands that can be sent to it.
The chromecast dongle is apparently listening on http port 8008. (Also port 9080 while Netflix app is running)
Some control can be established by sending simple HTTP GET’s, POST’s and DELETE’s.
** For these examples the youtube app is running, also available are Netflix, ChromeCast, and GoogleMusic.
get device information xml:
get detailed device information json:
scan for available wifi:
get supported time zones:
get info about current app:
curl -H “Content-Type: application/json” -X GET
send youtube video to chromecast:
curl -H “Content-Type: application/json” -X POST -d ‘v=oHg5SJYRHA0′
kill current running app:
curl -H “Content-Type: application/json” -X DELETE
reboot the chromecast dongle:
curl -H “Content-Type: application/json” -d ‘{“params”:”now”}’ -X POST
factory default reset the chromecast dongle:
curl -H “Content-Type: application/json” -d ‘{“params”:”fdr”}’ -X POST
Hopefully more to come… Focusing on the websocket connections now
I would like to be able to send commands (power, volume, source) to the tv through the hdmi-cec connection of the chromecast.
Chromecast Hacking Has Begun | fiquett.com

martes, 17 de septiembre de 2013

WebRTC: Stream from your browser, no plugins needed

I know that the Web has a lot to offer and much, much more to come.

Native languages will be deprecated and HTML along with Javascript will persist.

Google is doing a good work with Dart Lang, they know what the future will look like. they have Native Code just for today's needs but that's it. I think they will move all to Dart when it's ready.

And here with Web RTC support in the new Firefox 24 we have another clue of that.

With Web RTC you will be able to show your camera and activate your microfone directly from your browser.

If you're a developer, start checking this link and do some apps ready for the future, just like I'll start today


Yahoo and their connection to the TV World

The Yahoo! Connected TV Platform® allows developers to write TV Apps using JavaScript and XML. These applications run on connected TV devices and take advantage of Internet services to deliver dynamic content to a video or television-viewing audience. If you'd like to stake your claim on the leading edge of a new technology, you can get started today developing TV Apps.

How Do I Get Started?

Yahoo! Connected TV Store

Sell your TV Apps directly to consumers using the Yahoo! Connected TV Store available in over 135 countries. Developers may charge a one-time fee of 99¢ to $99. All transactions are facilitated by Yahoo!.
More Info...

Media Support

Create apps that take advantage of big-screen HD TVs to view video, photo slideshows, or listen to music. Create a single app to serve media across Sony, Samsung, VIZIO, Toshiba, and Hisense TVs.
Check out the Yahoo! Connected TV Media Player API documentation.

Device Communication

Turn your phone or tablet into a remote control for your TV App interface. Connect your mobile device to your TV through your home network. Effortlessly type text on the TV using your mobile device keyboard. Send web pages from the TV to your mobile device’s web browser. Implement device communication and create compelling second screen experiences using this flexible protocol.
More Info...

Supported Devices

Business Opportunities

TV Apps provide the ability to monetize these services with the same powerful business models found on the web. The same personalization, authentication and tracking mechanisms available for tracking media usage on the web can be used on TV.

More Info...


Monetize Your Unity Games with BlackBerry In-App Payment Plugin

Monetize Your Unity Games with BlackBerry In-App Payment Plugin

Monetizing your Unity 3D games on BlackBerry 10 just got super easy! The gaming folks at BlackBerry have been busy – and we are pleased to announce the release of a free BlackBerry In-App Payment pluginvia the Unity Asset Store that provides access to the BlackBerry Payment Services.
Here is a quick run-down on what you need before you can add IAP features to your game:
1. Download the Plugin
Assuming you are up and running with Unity BlackBerry development, you should be now able to download and import the BlackBerry IAP plugin from the Unity Asset Store (Window->Asset Store).
BlackBerry IAP_1
The BlackBerry IAP plugin interface, documentation and sample script (BlackBerryIAPTest.cs) can be found under the “BlackBerry” folder in the project tree window. The plugin is a wrapper around the native BlackBerry Payment APIs and it is highly recommended to understand the fundamentals of the BlackBerry Payment Service.
2. Add the virtual goods
Before adding virtual goods, a signed version of your game must be uploaded to the BlackBerry World portal. The game can be uploaded by clicking the “Manage Products -> Add Product” buttonOnce the game is uploaded and listed under your products, you should be able to start adding virtual goods by clicking the “+” button under the “goods” column, as shown below. 
BlackBerry IAP_2
BlackBerry IAP_3
The virtual goods can be distributed under the following license types:
  1. Non-consumable: This license type is for a virtual good that can only be purchased once by a user. The Payment Service server automatically blocks subsequent purchases by the user.
  2. Consumable: This license type is for a virtual good that may be purchased by a user more than once. The Payment Service server does not set any controls on the number of times that a user can purchase these goods.
  3. 7/30-day Subscription: This license type allows you to set an initial purchase price (or free), as well as a renewal price. Once the user has purchased this product, they will automatically be charged the renewal price every 7 or 30 days until the subscription is canceled.
And under the following license models:
  1. Static: A user does not require a license key to run the product.
  2. Single: You must provide a single license key that all users can use to run the product.
  3. Pool: You must provide a pool of unique license keys that RIM can use to distribute to each user. The pool must contain at least 100 license keys.
  4. Dynamic: You must provide an address for a web site that generates license keys. This licensing model is deprecated and support for new applications using this mode will be removed in a future release.
For more information on submitting your game to BlackBerry World, managing virtual goods and choosing the right licensing options, refer to the BlackBerry World getting started documentation.
3. Test In-App Purchasing
Once your virtual goods are uploaded and your code written, you should be able test your IAP transactions using two testing modes:
  1. Local Testing: Great for prototyping and development. The cool part is that we don’t require a BlackBerry World account setup or even a network connection. CallingBlackBerryIAP.SetConnectionMode(true) enables local testing.
  2. Sandbox Testing: Once implementation is validated with local testing, you should be able to test your IAP transactions in sandbox mode. This mode, however, requires a network connection. No credit card charges will go through during sandbox testing.
For more information on BlackBerry IAP testing, refer to BlackBerry Payment Service Documentation.

sábado, 14 de septiembre de 2013

lunes, 9 de septiembre de 2013

That's life and Samsung Android app Check List

I was about to finish an Android app that it was very, VERY helpful for me and I wanted to put it on the Market because there's nothing there as this one I just did.

But my laptop rebooted and all the work got screwed. Damn... So I need to start over again. No backup to restore.

And as I have to start again, let me share with you here this new Check List for Samsung apps (this one I'm building again is an Android app)
Direct link here.
This document has been prepared for developers who submit Android OS applications for Samsung Apps. Before submitting your application, we recommend that you check below criteria have been met to reduce the time to get an approval for your application.
Self-Check List Download   Mar 14, 2013 14.8 KB

1. Basic Information

  1. Icon, Screenshot, Description and Tag must be consistent with the application`s content and adhere to 4+ age rating.
    Icon, Screenshot, Description and Tag should be adhered with 4+ age rating because they are exposed to each and every user without downloading the application.
  2. Default Application Title and Description must be written in English if selecting 2 or more countries for sale.
    You can add Application Title and Description in other 37 languages for global users in Additional Language section on Seller Office.
  3. Description must not include other application store’s Public Relations.
  4. Age Restriction and Category must be correct and valid.
    You can find ‘Age Rating Guide’ from Seller Office.
  5. Application should provide the Help option in the menu if Description does not provide enough explanation to understand the application.

2. Installation & Execution

  1. The size of apk file*4MB must not exceed the internal memory of device.
    To download and install an application from Samsung Apps, internal available memory should be at least the size of the apk file*4MB.
  2. Application must be installed for the targeted devices without any problems.
  3. Application must be uninstalled as user expects.
  4. Application should be executed without any problems.
  5. Application must be closed without any problems by following options.
    1. 1) Using the exit option in application
    2. 2) Using the Task Manager

3. Functionality

  1. If DRM is applied, application must be activated normally with DRM.
  2. All the menus and functions operate successfully without any problems.
  3. Application`s resolution should be optimized for the targeted device.
    When application`s resolution is larger than the device`s one, the application should provide a scroll bar or fold/unfold function.
  4. If application supports both Portrait and Landscape modes, layouts should automatically adapt to screen with consistent UI when the user rotates the device.
  5. Application should go to sleep mode unless the application requires otherwise (e.g. Navigation, Video, etc.).
  6. If reaction time takes more than 5 seconds, the user should be notified by a message or progress bar.
  7. There should be a function to move to other pages or menus.
  8. If application uses network, there should be a message about additional charges.

4. Interruption

  1. Call Event
    1. 1) User should accept/reject a Call without any problems while application is running.
    2. 2) Sound of application should stop when the user is on the line.
    3. 3) Application should resume after user reject/end a Call.
  2. Message(SMS/MMS/IM) Event
    1. 1) User should get a Message alert while application is running.
    2. 2) Message should be received without any problems.
    3. 3) Application should resume after receiving Message.
  3. Alarm Event
    1. 1) Alarm should work without any problems while application is running.
    2. 2) Application should resume after the Alarm is turned off.
    1. 1) Application should stop when user presses HOLD KEY while application is running.
    2. 2) Application should resume automatically or by selecting resume menu after release Hold mode.
    Music playing application is exception.
    1. 1) Application should stop and switched to IDLE screen when user presses CENTER KEY while application is running.
    2. 2) Application should resume when user re-executes the application.
  6. OTHER KEY Application should operate without any problems when user presses H/W KEY while application is running (BACK, CAMERA, etc.).

5. Content Review

  1. Copyright information must be declared if seller own the copyright of apk, content(e.g. Music, Images, Brand logo, etc) used in application or have the contract with the copyright holder.
  2. Application must not contain Samsung Brand in Application Title, Icon or Content.
  3. Content must not contain any sexually suggestive things (verbal or graphic).
    • pornography or nudity
    • direct/indirect expressions of sexually explicit behavior
    • exposed male or female genitalia
  4. Content must not contain realistic presentation of violence which could instigate copycat crime.
    Content must not incite the use of illegal drugs, alcohol or tobacco.
  5. Content must not contain a realistic presentation of criminal activities such as murder, suicide or prostitution which could instigate copycat crime
  6. Content must not incite gambling involving real money (including cyber money that can be exchanged with real money).
  7. Content must not have political, ideological, racial, religious or sexual prejudice.
    Content must not slander or defame others on the basis of politics, ideology, race, religion or sex.
  8. In case of a 18+ game application for the Korean market, Age rating from GRB must be obtained.
  9. Application must not upgrade itself or download other applications(apk file) using other way without Samsung Apps(Other application store or illegal download).
  10. Re-exam
    1. 1) Check if all the defects from the last submission are fixed.
    2. 2) Corrections should be mentioned in ‘Comments to Apps Review Team’ section.
    1. 1) Revised or added functions should be explained in Description and ‘Comments to Apps Review Team’ section.
    2. 2) Application should be updated to the revised version from the Samsung Apps Store.

6. Recommendation

  1. It should be possible to reinstall the deleted application on the device.
  2. Application screen should be loaded in reasonable time. If loading takes too long on the Splash screen, the application should notify the user that the loading is in progress.
    The user should be notified about loading status through a message or a progress bar.
  3. Application should work normally when executing and terminating the application three times in a row.
  4. Application image should be clearly visible on devices with high resolution.
  5. Menu name should be related to content to let the user identify application functions through menu name.
  6. Software Keys should be presented in a same way depending on the function. If executing menu is on the left side, other executing menus should be on left side as well.
    OK, SAVE, GO, CONFIRM means execution.
    BACK, CANCEL, IGNORE means going back to the previous page or returning to the previous status.
  7. There should be no data loss when application uses the data linkage ways. (e.g. Phone number, Message, Call log, Calendar, Media file)
  8. Application should work without any problems when Low Battery popup appears while application is running.