我有一些服务需要通过用户输入或给定默认值来重复启动,因此我需要添加参数来处理它,
我已经尝试过了:
@ReactMethod
public void start(){
start(1000);
}
@ReactMethod
public void start(int timer){
Intent i = new Intent(reactContext, ServiceUploadData.class);
i.putExtra("Interval", timer);
reactContext.startService(i);
}
但是这些代码显示错误
开始有0个参数,预期为1
有人可以帮助我吗?
答案 0 :(得分:1)
尽管我没有在文档中看到它,但在代码中已经看到了它
我们不支持方法重载,因为js将函数视为对象,而不考虑参数的数量。
要解决此问题,您可以执行以下任一操作。
public void start()
的名称更改为public void startWithDefault()
public void start(int timer)
并在JavaScript端处理初始值if
检查是否已设置初始值,然后调用适当的函数。 第二个和第三个选项使您可以将api与用户保持一致,因为他们只会与JavaScript进行交互。