Android PhoneGap打开一个新的Activity

Red*_*dax 14 android cordova

我有一个加载PhoneGap的html页面.HTML是我的,并在电话上,所以我完全控制它.

我想点击html页面上的链接打开一个新活动.

例如:

的index.html

...    
<a class="FullText" href="http://LinkToOpenPage" >Click me to open an activity</a>
...
Run Code Online (Sandbox Code Playgroud)

MainActivity.java

...
public void OnReceiveLink(string Link)
{
if (Link=="LinkToOpenPage")
    {
    Intent myIntent = new Intent(view.getContext(), CalledActivity.class);
    startActivity(myIntent);
    }
}
...
Run Code Online (Sandbox Code Playgroud)

有人能帮我吗?

Jiv*_*ngs 11

看看这个插件:http://smus.com/android-phonegap-plugins

该方法是关于使用PhoneGap插件向Web公开其他Android功能.意图是Android生态系统的基本组成部分,允许应用程序之间的某种消息传递机制,但它们不会暴露给Web应用程序.我编写的示例Android插件名为WebIntent,它允许您在JavaScript中创建第一类Android应用程序...

这种架构是解锁任何Android功能到您的PhoneGap包装的移动Web应用程序的关键...


lan*_*a90 5

创建一个新类:

public class Variables {

    private WebView mAppView;
    private DroidGap mGap;

    public Variables(DroidGap gap, WebView view)
    {
        mAppView = view;
        mGap = gap;
    }

    public void changeActivity(){     
        Intent intent = new Intent(mGap, Example.class);
        mGap.startActivity(intent);
    }
}
Run Code Online (Sandbox Code Playgroud)

在您的主要活动中添加:

super.init();
mc = new Variables(this, appView);
appView.addJavascriptInterface(mc, "MyCls");
Run Code Online (Sandbox Code Playgroud)

在JavaScript调用window.MyCls方法中:

function changeActivity() {
    window.MyCls.changeActivity();
}
Run Code Online (Sandbox Code Playgroud)