Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

naming convention for passing data through extras in android

when passing extras such as Intent.putExtra("myName", myName), what's the convention for the name of the extra?

ie: if passing data between two activities, both would put/extract data under the id "myName", but should I just hardcode "myName" everywhere, or keep the value in the R.values.string?

like image 888
damonkashu Avatar asked Dec 13 '10 21:12

damonkashu


1 Answers

Hardcoding is definitely not an ideal solution.

The convention used in the Android framework is to create public static final constants named EXTRA_FOO (where FOO is the name of your key) like Intent.EXTRA_ALARM_COUNT

The actual value of the constant is a name spaced string to avoid conflicts: "android.intent.extra.ALARM_COUNT"

If you don't want to create dependencies between your Activities with constants, then you should consider putting these keys into string values within your strings.xml file. I tend to follow the same naming convention when defining the keys in xml:

<string name="EXTRA_MY_NAME">com.me.extra.MY_NAME</string> 

It still reads like a static constant from the Java side:

getString(R.string.EXTRA_MY_NAME); 
like image 165
Eric Levine Avatar answered Oct 17 '22 19:10

Eric Levine