Joe*_*oel 4 java android environment-variables command-line-arguments
我想将一个参数传递给通过Eclipse启动的android模拟器.这个参数是一个自定义的参数,我将用它来确定服务器的连接地址是"localhost"还是"myserverdomain.com".这是因为每当我在生产环境或本地测试环境中运行程序时,我都不希望有两个二进制文件或两个版本的同一程序.
在普通的Java中,我可以使用命令行参数,并在其中检索它们main(),或者也可以使用自定义环境变量并使用它来检索它们System.getProperty().
我在Android中找不到任何类似的功能.你知道吗?
这是可能的,虽然我没有尝试过Eclipse.
从命令行,您可以使用adb启动shell并运行带参数的应用程序.
例如,
adb shell am start -a android.intent.action.MAIN -n org.caoilte.MyActivity -e SOME_KEY some_value -e SOME_OTHER_KEY some_other_value
Run Code Online (Sandbox Code Playgroud)
将使用我可以从包中提取的额外内容开始我的活动,如此,
public class MyActivity extends Activity {
protected void onStart() {
super.onStart();
String someKey = null;
String someOtherKey = null;
Bundle extras = getIntent().getExtras();
if (extras != null) {
jsEnv = extras.getString("SOME_KEY");
serverEnv = extras.getString("SOME_OTHER_KEY");
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1921 次 |
| 最近记录: |