OUYA Plugin With Turret Mouse Support

I made some changes to the OUYA Unity Plugin and placed the updates into a new repository. I moved the Java source into an Android Studio project and removed the Java/NDK compile options from the editor. And then I added support for the Razer Turret Mouse service with an API to access the mouse position and button information on the Forge TV.


Xamarin: Bypass JAR Binding

Xamarin has a nice C# binding process that automatically wraps Java so that it can be called from C#. In my case the binding was causing an Input ANR (activity-not-responding) crash during startup. [This post] provided enough detail to be able to bypass the binding process so that I could use a raw Java activity to bypass the crash that was happening.


There’s a handy Gradle setting if you are using `Google Play` and try to target API `23` you’ll see `org.apache.http` went missing. This handy Gradle setting brings the legacy packages back.

apply plugin: 'com.android.library'

android {
    compileSdkVersion 23
    buildToolsVersion '24.0.1'
    useLibrary 'org.apache.http.legacy'

Cocos2d Plugin for Razer SDK

I created a Cocos2d Plugin for the Razer SDK. There’s several ways to build Cocos2d (i.e. Visual Studio, Android Studio, and XCode). The Visual Studio build process doesn’t support the AAR format yet, so the plugin uses the JAR format. The Android Studio gradle files do support AAR files.
[Cocos2d Plugin Razer SDK]

Playing Video from OBB File

I have a Google Play project where the APK size was over 100MB. I had to take the video content out of the APK and put into a split OBB file to get under the size limit. The OBB file wraps a couple MP4 video files and I zipped with 7-zip as a ZIP with STORAGE compression. To play the video, I used a VideoView with the [CustomAPEZProvider] to play video directly from the downloaded OBB file.

Human Interface Guidelines

The [IOS Human Interface Guidelines] can be followed to really make your application shine. There’s no reason why you can’t follow the same guidelines for Android an iOS. Google has similar design guidelines called [Material Design]. [Pixate] is a useful tool for prototyping designs on Android and iOS. The Adobe [Color Wheel] helps pick colors that are constrained by design rules. You can also check your material design with the [Resizer].