i got this code from Settings app...
<string name="about_settings" product="tablet">About tablet</string>
<string name="about_settings" product="default">About phone</string>
then my questions are:
- from where at runtime the system load the correct string resource ?
What must I do to add a new product? e.g.
<string name="about_settings" product="laptop">About laptop</string>
- from where at runtime the system load the correct string resource ?
The system does not load this at runtime. The correct string resource is preloaded according to PRODUCT_CHARACTERISTICS defined for a specific target build. So you cannot use this while building from eclipse. This is used only for building apps preloaded on platform.
2 . What must I do to add a new product? e.g.
You need to add to PRODUCT_CHARACTERISTICS in device.mk file
Answer for your question 1.
You can get them via
String mystring = getResources().getString(R.string.mystring);
But your strings.xml
should something like this
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="tablet" >About tablet</string>
<string name="default" >About phone</string>
</resources>
Answer for your question 2.
How will that work, because that is a resource file. If you want you can either create a file and save the information in it. Locally. But it will be only on that device.
来源:https://stackoverflow.com/questions/16995503/android-resource-for-a-specific-product