Why can't I use Resources.getSystem() without a Runtime error?

According to Android documentation, Resources.getSystem() only provides system-level resources, not application-level ones (like the resources inside your strings.xml file).

http://developer.android.com/reference/android/content/res/Resources.html#getSystem()

Try using the application's context if you really want to retrieve your strings this way, or take my suggestion in the comment to your question.


Using Resources.getSystem().getWhatEver() you can only access system-wide resources (you get the error because there is no system-wide resource with your ID). Since resource ID are not unique across applications you need to provide the application, when accessing a resource. In Android this is done using Context. So if you want to access some resource you need to use it like this

context.getResources().getString(myID);

Apart from that Brandon's comment is correct.