加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 传递给Android模拟器的自定义参数/变量

发布时间:2020-12-15 08:42:36 所属栏目:Java 来源:网络整理
导读:我想将一个参数传递给通过 Eclipse启动的android模拟器.这个参数是一个自定义的参数,我将用它来确定服务器的连接地址是“localhost”还是“myserverdomain.com”.这是因为每当我在生产环境或本地测试环境中运行程序时,我都不希望有两个二进制文件或两个版本
我想将一个参数传递给通过 Eclipse启动的android模拟器.这个参数是一个自定义的参数,我将用它来确定服务器的连接地址是“localhost”还是“myserverdomain.com”.这是因为每当我在生产环境或本地测试环境中运行程序时,我都不希望有两个二进制文件或两个版本的同一程序.

在普通的Java中,我可以使用命令行参数,并在main()中检索它们,或者使用自定义环境变量并使用System.getProperty()检索它们.

我在Android中找不到任何类似的功能.你知道吗?

解决方法

这是可能的,虽然我没有尝试过Eclipse.

从命令行,您可以使用adb启动a 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

将使用我可以从包中提取的额外内容开始我的活动,如此,

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");
    }
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读