【问题标题】:Converting Java main to Android Extend activity将 Java main 转换为 Android Extend 活动
【发布时间】:2017-07-18 20:47:30
【问题描述】:

目前我正在尝试将一段 Java 编码转换为 Android Studio。 这是原始代码

    public static void main(String[] args)
    {
        ModbusClient modbusClient = new ModbusClient("192.168.1.106",502);
        try
        {
            modbusClient.Connect();
            modbusClient.WriteSingleCoil(0, true);
            modbusClient.WriteSingleRegister(0, 1234);
            modbusClient.ConvertFloatToTwoRegisters((float) 123.56));

        }
        catch (Exception e)
        {       
        }   
}

这是 Android Studio 中的编辑版本:

public class medusaTest extends Activity {

    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_mb);
        Button b = (Button)this.findViewById(R.id.btn1);
        b.setOnClickListener(new Button.OnClickListener(){
            public void onClick(View v)  {
                ModbusClient modbusClient = new ModbusClient("192.168.1.106",502);
                try
                {
                    modbusClient.Connect();
                    modbusClient.WriteSingleCoil(0, true);
                    modbusClient.WriteSingleRegister(0, 1234);
                    modbusClient.WriteMultipleRegisters(11, ModbusClient.ConvertFloatToTwoRegisters((float) 123.56));
                    //System.out.println(modbusClient.ReadCoils(0, 1)[0]);
                    //System.out.println(modbusClient.ReadHoldingRegisters(0, 1)[0]);
                    //System.out.println(ModbusClient.ConvertRegistersToFloat(modbusClient.ReadHoldingRegisters(11, 2)));
                }
                catch (Exception e)
                {
                }
            }
        });

    }
    }

问题是,每当我尝试在 android 上运行它时,它都会一直停止应用程序。请给我建议并帮助我在 Android 中运行此代码。谢谢你

【问题讨论】:

  • 你能给我们看看 LogCat 吗?
  • 您是否在两个文件中都添加了导入?
  • @ACV 是的,我添加了。
  • 没有比try 和空的catch 更糟糕的了,把这个添加到你的catch 中,看看logcat e.printStackTrace(); 中记录了什么异常

标签: java android function type-conversion


【解决方案1】:

确保将 Internet 权限添加到您的 manifest.xml 文件中。

<uses-permission android:name="android.permission.INTERNET" /> 

【讨论】:

  • 我现在添加这个。
【解决方案2】:

我设法找到了我的问题的答案。解决办法

在公共类的Setcontentview(R.Layout.main_activity)之后添加代码

代码:

    if (android.os.Build.VERSION.SDK_INT > 9) {
        StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
        StrictMode.setThreadPolicy(policy);
    }

我的问题已经解决了。谢谢

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-01-16
    • 1970-01-01
    • 1970-01-01
    • 2015-07-05
    • 2015-06-21
    • 2016-08-14
    • 2021-04-12
    • 2011-03-24
    相关资源
    最近更新 更多