Android PhoneGap, чтобы открыть новую активность

У меня есть html-страница, загруженная PhoneGap. Html принадлежит мне и находится по телефону, поэтому я полностью контролирую его.

Я хотел бы нажать ссылку на странице html, чтобы открыть новое действие.

Пример:

index.html

...    
<a class="FullText" href="#" onclick="location.href='http://LinkToOpenPage'; return false;" >Click me to open an activity</a>
...

MainActivity.java

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

Может кто-нибудь мне помочь?

Ответы

Ответ 1

Взгляните на этот плагин: http://smus.com/android-phonegap-plugins

Это практическое задание состоит в том, чтобы разоблачить дополнительные функции Android в Интернете с помощью плагинов PhoneGap. Намерения являются фундаментальной частью экосистемы Android, что позволяет использовать механизм передачи сообщений между приложениями, но они не подвержены веб-приложениям. Образец Android-плагина, который я написал, называется WebIntent, который позволяет создавать приложения Android первого класса в JavaScript...

Эта архитектура является ключом для разблокировки любых функциональных возможностей Android для вашего мобильного веб-приложения, переносимого PhoneGap...

Ответ 2

Создайте новый класс:

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);
    }
}

в вашем основном мероприятии добавьте:

super.init();
mc = new Variables(this, appView);
appView.addJavascriptInterface(mc, "MyCls");

в методах JavaScript window.MyCls:

function changeActivity() {
    window.MyCls.changeActivity();
}