The first thing that will usually attract people to test out an app (aside from a recommendation from friends and family) is how the graphics look. Here are some tools that are used by developers to enhance their app's graphics.
- Android Canvas is an important component app developers use when they want to "draw" something. It hosts the "draw calls" that allow them to write into the bitmap.
- Matrix helps developers scale and rotate bitmaps.
- GPU Rendering makes use of the powerful graphics processing unit. This processor was specifically developed to render images quickly and effectively.
- GL Surface, in very simple terms, is an area where developers can "place" their OpenGL rendering. This is done using GLSurfaceView.Renderer and displayed using GLSurfaceView.
- OpenCV is a library of programs and functions that help with real time image viewing.
An Android device can create graphics in different ways. One of the ways is the output on Canvas with the use of libraries of primitives, sprites and fonts. For full-screen display, we use OpenGL to facilitate porting of the existing cross-platform code and RenderScript library to process images with the help of a video accelerator.
Click on any of the skills on this page to read more about them.
- Maps and GeolocationGoogle Maps, Google Places, Geocoding/Geoencoding, OSM and GPS Location
- Social ConversationsText Messages/Phone/Mail, Twitter, Facebook, LinkedIn, Instagram, Google+ (YouTube), Path, Vine, WhatsApp, WeChat, and Tumblr
- Native TechnologiesAndroid NDK C/C++, Android Media Codec, Android Lolipop Camera, Wi-Fi 3G connection, View and custom viewgroup layout, internationalization and localization, local data storage, Action Bar, NFC, Bluetooth, GMC Push Notification, Multi Fragments application, account management, Widget, Live Wallpapers, Lock screen, Custom keyboard, OpenGL ES 1.1/2.0, Data providers, Renderscript, Speech API, Telephony API, Multi-Touch gestures and Multithreading
- Game/Render EnginesAndEngine, Unity 3D, Rajvali and LibGDX
- AdvertisingMoPub, Nexage, Millenial, InMobi, RefMob, LeadBolt, AdInch, Airpush, InnerActive, InMobi, Google AdMob
- Android Data AccessSharing data between apps with intents and receiver, Contacts (address book), Photos and Videos on device, Calendar and Reminders/Alerts
- NetworkingP2P, Sockets, RSS and Networking Frameworks (Android Http client, Turboimage, Android query, Android Async client, Volley, DataDroid, GreenDroid, Parse SDK, Cisco ipSec VPN)
- Android NDKlibJpeg, libPng, ffmpeg, 3d math matrix, Pthread, VLC and Android ADT
- External HardwareNFC, Arduino, Bluetooth, USB Host, Action camera, Drones and Wi-Fi
- In-App PurchasesAndroid Google API payments, PayPal, LiqPay, Yandex payments, Open IAB and Amazon payments
- VideoMedia Player Framework, Ffpmeg Player Framework, GoPro, video filtering, video encoding/decoding and Video streaming (RTMP, RTSP, HLS)
- AnalyticsFlurry, Amplitude, Kahuna, Google Analytics and Crashlytics
- AudioMediaPlayer, OpenSL, MediaTrack, Audio generation, Audio Filtering and SoundPool
- GraphicsAndroid Canvas, Matrix, GPU Render, GL Surface and OpenCV
- DistributingCrashlytics Beta, Android Market Alpha/Beta