Annyce Davis

Davis Technology Consulting

  • Home
  • About Me
  • Blog
  • Courses
  • Newsletter

Android Annotations: Brief Overview and a Simple Example

March 10, 2014 by Annyce Davis

Android Annotations is a project which allows you to use simple Java Annotations in your Android classes and have the compiler generate some of the “boilerplate code” for you.  I have not noticed any overhead in the application’s performance so far and I really like how neat the code is, when compared to some of the default code that is typical in Android applications.

Here is an example of creating an activity and then performing a simple operation using a bean to load data:

@EActivity(R.layout.main)
@OptionsMenu(R.menu.main_menu)
@Fullscreen
public class MainActivity extends Activity {

@Bean(MyAPIImpl.class)
MyAPI mAPI;

@AfterInject
void loadData() {
mAPI.getData();
}

@Click(R.id.startButton)
void startClicked() {
NextActivity_.intent(this).start();
}
}

So what you’ll notice in the code is that it’s very clear what this Activity is doing, no need to scroll through lists of Views being initialized and endless availability checks.  Also, the click listeners that are normally splattered throughout the code is contained in a simple method with the @Click annotation. Here you just define the resource id of the item that you would like to associate with the click event and then a method to handle the click.

Furthermore, this Activity references a view in the R.layout.main layout file, without having to define the typical onCreate() method. It also defines which menu file it’s going to use with the @OptionsMenu annotation. Pretty simple, right?  In a future post I will show additional examples of how using AndroidAnnotations makes your code more maintainable. Have you tried this library yet? If so, please let me know what you think. Curious to find out what others think of it.

StackOverflow Flair – Why Not?

January 16, 2014 by Annyce Davis

Just discovered StackOverflow had an option to display your flair. Why not?

  profile for adavis at Stack Overflow, Q&A for professional and enthusiast programmers

Android: IntelliJ IDEA/Android Studio Quick Tip

January 2, 2014 by Annyce Davis

I’ve started using IntelliJ as my IDE of choice for developing backend APIs and Android applications.  One really nice feature, which is also available in Android Studio, is the option to create strings.xml values on the fly.  All you need to do is type the name of the desired string resource and then the “bulb” icon will appear asking you if you want to create that resource.  Super simple, but extremely convenient for those times when you are editing a lot of xml files in Android.

 

 

 

Grails: Displaying messages from messages.properties in Quartz Job

December 16, 2013 by Annyce Davis

When working with Quartz Jobs, you may want to take advantage of Strings that are located in the messages.properties file.   In order to do this, you need to get a reference to the messageSource bean and then call the getMessage() method with the name of the message that you want to use, whatever objects you need to pass to the message and finally the locale. (examples below)

def messageSource 
...
messageSource.getMessage('my.msg', [myObject] as Object[], Locale.US)

Without any parameters in the message:

def messageSource 
...
messageSource.getMessage('my.msg.no.params', null, Locale.US)
« Previous Page
Next Page »

Follow Me

  • Bluesky

Categories

  • Android (61)
  • Career (5)
  • Communication (4)
  • Flutter (1)
  • Git (4)
  • Gradle (4)
  • Grails (23)
  • iOS (1)
  • Java (8)
  • JavaScript (6)
  • Kotlin (17)
  • Life (5)
  • Public Speaking (26)
  • Revenue (2)
  • RxJava (1)
  • Software Development (14)
  • Twitter (3)
  • Uncategorized (11)
  • Video Course (5)

Follow Me

  • Bluesky

Copyright © 2025 · All Rights Reserved · Log in