首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Crosswalk -如何在XWalkExtension类中获取安卓应用程序上下文?

Crosswalk -如何在XWalkExtension类中获取安卓应用程序上下文?
EN

Stack Overflow用户
提问于 2014-12-03 13:00:20
回答 1查看 443关注 0票数 0

因此,我正在遵循在https://crosswalk-project.org/documentation/embedding_crosswalk/extensions.html上创建人行横道扩展的说明。我的问题与扩展XWalkExtension类有关。

代码语言:javascript
复制
package org.crosswalkproject.sample;

import org.xwalk.core.XWalkExtension;

public class ExtensionEcho extends XWalkExtension {
    private static String name = "echo";

    private static String jsapi = "var echoListener = null;" +
         "extension.setMessageListener(function(msg) {" +
         "  if (echoListener instanceof Function) {" +
         "    echoListener(msg);" + "  };" + "});" +
         "exports.echo = function (msg, callback) {" +
         "  echoListener = callback;" + "  extension.postMessage(msg);" +
         "};" + "exports.echoSync = function (msg) {" +
         "  return extension.internal.sendSyncMessage(msg);" + "};";

    public ExtensionEcho() {
        super(name, jsapi);
    }

    @Override
    public void onMessage(int instanceID, String message) {
        postMessage(instanceID, "From java: " + message);
    }

    @Override
    public String onSyncMessage(int instanceID, String message) {
        return "From java sync: " + message;
    }

}

在扩展XWalkExtension类时,如何获取安卓应用程序上下文?因此,如果我想创建Toast消息,可以传入上下文。

EN

回答 1

Stack Overflow用户

发布于 2015-01-22 00:20:02

没有一个公开记录的接口来从XWalkExtension获取活动。您可以修改构造函数以存储对活动的私有引用,然后简单地将其传入实例化扩展的位置。

代码语言:javascript
复制
public class ExtensionEcho extends XWalkExtension {
    private final Activity activity;

    public ExtensionEcho(Activity activity) {
        this.activity = activity;
    }

    ...
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27263972

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档