【问题标题】:How can I run java code within phonegap / cordova? [duplicate]如何在 phonegap/cordova 中运行 java 代码? [复制]
【发布时间】:2012-09-21 02:28:22
【问题描述】:

可能重复:
Communication between Android Java and Phonegap Javascript?

当用户在我的 Phonegap index.html 界面中按下按钮时,我想运行一些代码

// 切换飞行模式

  Settings.System.putInt(
  context.getContentResolver(),
  Settings.System.AIRPLANE_MODE_ON, isEnabled ? 0 : 1);

// 发布一个重新加载的意图

Intent intent = new Intent(Intent.ACTION_AIRPLANE_MODE_CHANGED);
intent.putExtra("state", !isEnabled);
sendBroadcast(intent);

我想在按下按钮时启动该代码。也许以某种方式制作一个运行 java 代码的 javascript 函数(如果可能的话),所以我可以制作类似的东西

    <input type="submit" onlick="reconnect();" value="Reconnect to Cell Tower">

我正在使用 Cordova 1.9.0

【问题讨论】:

  • 我对 android 开发还很陌生。我对java一无所知。我也不知道这是否与 1.9.0 兼容。当然,可能有更简单的方法来做到这一点。
  • 如果该解决方案对您来说很复杂,您必须重新构建您的专有技术,因为该问题的答案对于 Java 程序员来说非常容易应用,它本身的概念也相当容易。跨度>

标签: android cordova


【解决方案1】:

只需像这样在您的主要活动中实现 corrodovaInterface ..

public class MainActivity extends Activity implements CordovaInterface, OnClickListener {
/** Called when the activity is first created. */
CordovaWebView cwv;
 @Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    cwv = (CordovaWebView) findViewById(R.id.webContent);    
    cwv.loadUrl("your index file");
    Button btnSearch = (Button)findViewById(R.id.btnSearch);
    btnSearch.setOnClickListener(this);
}

    public void onClick(View v) {
     //your code goes here...
}

你可能需要导入

import org.apache.cordova.*;
import org.apache.cordova.api.CordovaInterface;
import org.apache.cordova.api.IPlugin;

谢谢。

【讨论】:

  • 感谢您的帮助。我如何在 index.html 文件中调用它?
  • cwv.loadUrl("你的索引文件");在这里你可以设置你的 index.html 文件
  • cwv.loadUrl("file:///android_asset/www/index.html");使用这个
猜你喜欢
  • 2014-09-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-05
  • 1970-01-01
  • 1970-01-01
  • 2021-05-28
  • 1970-01-01
相关资源
最近更新 更多