如何从javascript调用java方法

如何从javascript调用java方法,javascript,java,android,augmented-reality,wikitude,Javascript,Java,Android,Augmented Reality,Wikitude,我试图在wikitude示例项目上实现一些额外的功能 我尝试的是:我在Poi细节面板中的“更多”按钮附近有一个按钮(“带我去那里”),当用户单击“带我去那里”按钮时,我想调用一个java方法来进行一些计算 在我的js文件中,单击按钮的方法有: var currentMarker = World.currentMarker; var architectSdkUrlm = "architectsdk://navigation?id=" + encodeURIComponent(currentMark

我试图在wikitude示例项目上实现一些额外的功能

我尝试的是:我在Poi细节面板中的“更多”按钮附近有一个按钮(“带我去那里”),当用户单击“带我去那里”按钮时,我想调用一个java方法来进行一些计算

在我的js文件中,单击按钮的方法有:

var currentMarker = World.currentMarker;
var architectSdkUrlm = "architectsdk://navigation?id=" + encodeURIComponent(currentMarker.poiData.id) + "&title=" + encodeURIComponent(currentMarker.poiData.title);
document.location = architectSdkUrlm;
其中,architectSdkUrlm中的“Navigation”是我为计算创建的java类的名称。导航类为:

public class Navigation extends AbstractArchitectCamActivity  {

    @Override
public ArchitectView.ArchitectUrlListener getUrlListener() {
    return new ArchitectView.ArchitectUrlListener() {

        @Override
        public boolean urlWasInvoked(String uriString) {
            Uri invokedUri = Uri.parse(uriString);

            // pressed "Take me there" button on POI-detail panel
            if ("navigation".equalsIgnoreCase(invokedUri.getHost())) {
                Log.d("title",String.valueOf(invokedUri.getQueryParameter("title")) );
                /*final Intent navIntent = new Intent(Navigation.this, navigationIntent.class);
                navIntent.putExtra(navigationIntent.EXTRAS_KEY_POI_ID, String.valueOf(invokedUri.getQueryParameter("id")) );
                navIntent.putExtra(navigationIntent.EXTRAS_KEY_POI_TITILE, String.valueOf(invokedUri.getQueryParameter("title")) );
                Navigation.this.startActivity(navIntent);*/
                return true;
            }

            return true;
        }
    };
}
}
我想看看是否可以通过日志消息从js调用java文件,但我什么都没有得到

你知道可能是什么问题吗


谢谢。

从java和javascript之间的交互角度看,它看起来不错。确保自己完全调用document.location行。从java和javascript之间的交互角度来看,这看起来不错。请确保您调用document.location line。