Vishnu Rajeevan


  • Home

  • About

Using Kotlin Extensions for Rx-ifying

Posted on 2016-02-13

Kotlin and Reactive Extensions (Rx) are the new hotness in Android development, and not without reason. Both technologies are loved for being concise, expressive and powerful. This is especially useful in the Android world where APIs can be long-winded and filled with ceremony.

Read more »

Using RecyclerView With Multiple Items

Posted on 2015-07-12

A simple pain point I always seemed to encounter when developing for Android is dealing with multiple items types in a ListView or a GridView. Luckily, RecyclerView has some pretty neat built in support for this feature, and I've used it successfully with collections containing >10 item types. Adding that kind of complexity can lead to lots of ugly code in your adapter, and trying to keep that clean will help in maintainability and reduce possible bugs. Let's build a quick app that shows various fruits and veggies with specific styling for their type.

Read more »

Rebound for Android View Animations

Posted on 2014-08-06   |   In Android, Rebound, open-source

So after seeing this post on reddit the other day, I decided I'd try and utilize Rebound for the link drawer in my Hacker News app. Currently, the app uses a basic translate animation on the StoryLinkFragment when the "Show Link" button is pressed.

The simple translate animation is as follows:

title:"Translate Slide Up"
1
2
3
4
5
6
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:shareInterpolator="false">

<translate android:fromXDelta="0%" android:toXDelta="0%"
android:fromYDelta="0%" android:toYDelta="-100%"
android:duration="@integer/fragment_animation_times"/>

</set>

Read more »

Building and deploying for Android-L on Travis

Posted on 2014-07-28   |   In Android Open-Source

Going to start off with the .travis.yml file and then explain it.

language: android
jdk: oraclejdk7
env:
matrix:
- ANDROID_TARGET=android-L ANDROID_ABI=armeabi-v7a
android:
components:
- build-tools-19.1
before_install:
# Install base Android SDK
- sudo apt-get update -qq
- if [ `uname -m` = x86_64 ]; then sudo apt-get install -qq --force-yes libgd2-xpm ia32-libs ia32-libs-multiarch > /dev/null; fi
- wget http://dl.google.com/android/android-sdk_r23-linux.tgz
- tar xzf android-sdk_r23-linux.tgz
- export ANDROID_HOME=$PWD/android-sdk-linux
- export PATH=${PATH}:${ANDROID_HOME}/tools:${ANDROID_HOME}/platform-tools
- echo yes | android update sdk --filter platform-tools --no-ui --force > /dev/null
- echo yes | android update sdk --all --filter build-tools-20.0.0 --no-ui --force > /dev/null
- echo yes | android update sdk --filter android-20 --no-ui --force > /dev/null
- echo yes | android update sdk --filter sys-img-x86-android-19 --no-ui --force > /dev/null
- echo yes | android update sdk --filter extra-android-support --no-ui --force > /dev/null
- echo yes | android update sdk --filter extra-android-m2repository --no-ui --force > /dev/null
before_script:
- cp keystore.properties.example keystore.properties
- cp readability.properties.example readability.properties
- cp local.properties.example local.properties
script: "./gradlew clean assembleTravis"
deploy:
provider: releases
api_key:
secure: MeGKfVwOrIMT5TzI5tBhwfCH7tICedcJe0p5Cp3lyPhY26VlVJQ2HKH3yuv7OF9a6ngVWdBjxPtn2dDlWb3AqpPZDEwgzCJrYjaDlBfhk3JSdepKmhEltbcvFWyPgWGNVGWw3+EmDiDrmscKjF9kc0F06KveRziJb8JC3RBIDIk=
file: ${TRAVIS_BUILD_DIR}/app/build/outputs/apk/app-travis.apk
on:
repo: dinosaurwithakatana/holo_hacker_news
branch: material
tags: true
all_branches: true
view raw .travis.yml hosted with ❤ by GitHub

Read more »
Vishnu Rajeevan

Vishnu Rajeevan

4 posts
2 categories
2 tags
GitHub Twitter
© 2016 Vishnu Rajeevan
Powered by Hexo
Theme - NexT.Muse