【问题标题】:Xpages Mobile Controls Not Working With Android Web ViewXpages Mobile 控件不适用于 Android Web 视图
【发布时间】:2015-03-26 13:47:28
【问题描述】:

我已经构建了一个 Xpages 应用程序,该应用程序当前出现在 iOS 应用程序中并且工作正常。在我的 Android 版本中,相同的按钮不起作用。我点击它,没有任何反应。

它在 PC 上的 Chrome 中运行良好。

它在我的测试 Android 设备上的浏览器中也可以正常工作。

它在嵌入在 Android 应用程序中的网络视图中不起作用。

我需要使用不同类型的 webView 吗?

这里是java代码:

package com.scoular;

import android.os.Bundle;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.Toast;

import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;

import static com.XXXXX.utils.XXXXX.getPreference;

public class ExpensesActivity extends MainActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_expenses);
        String email = getPreference(this, R.string.email);
        String password = getPreference(this, R.string.password);
        String s = "<html>" +
                "<head>" +
                "<form action=\"https://XXXXm/XXXXX.nsf?Login\"" +
                "method =\"POST\" name =\"LogonForm\">" +
                "<input type=\"hidden\" name=\"Username\"" +
                "value=\"" + email + "\">" +
                "<input type=\"hidden\" name=\"Password\"" +
                "value=\"" + password + "\">" +
                "<input type=\"hidden\" name=\"RedirectTo\"" +
                "value=\"https://XXXXXX/XXXXX.nsf/m_XXXXXX.xsp\">" +
                "</form>" +
                "</head>" +
                "<script>" +
                "document.forms[0].submit()" +
                "</script>" +
                "</html>";
        File outputDir = this.getApplicationContext().getCacheDir();
        File outputFile = null;
        try {
            outputFile = File.createTempFile("temp", "html", outputDir);
            FileWriter writer = new FileWriter(outputFile);
            BufferedWriter bWriter = new BufferedWriter(writer);
            bWriter.write(s);
            bWriter.close();
        } catch (IOException e) {
            Toast.makeText(this.getApplicationContext(), "Got IOException: " + e, Toast.LENGTH_LONG).show();
        }
        WebView webView = (WebView) findViewById(R.id.expenses_web_view);
        webView.getSettings().setJavaScriptEnabled(true);

        webView.setWebViewClient(new WebViewClient());
        webView.loadUrl("file:///" + outputFile.getAbsolutePath());
    }
}

这里是 Xpage 的按钮部分

            <xp:button value="Approves" id="button3"
                styleClass="mblButton" style="font-weight:bold">
                <xp:eventHandler event="onclick" submit="true"
                    refreshMode="complete" id="eventHandler3">
                    <xp:this.action>
                                            <xp:actionGroup>
                            <xp:changeDocumentMode mode="edit"
                                var="document1"/>
                            <xp:confirm message="Approved" />
                            <xp:modifyField name="Action"
                                value="Approve" var="document1" />
                            <xp:saveDocument var="document1" />
                            <xp:executeScript>
                                <xp:this.script><![CDATA[#{javascript:var agent=database.getAgent("MobileApproval");
 var doc:NotesDocument = document1.getDocument();
agent.runOnServer(doc.getNoteID()); }]]></xp:this.script>
                            </xp:executeScript>
                            <xe:moveTo targetPage="homePage" />
                        </xp:actionGroup>
                    </xp:this.action>
                </xp:eventHandler>
            </xp:button>

【问题讨论】:

    标签: android android-webview xpages


    【解决方案1】:

    花了一点时间,但我找到了解决方案。

    我使用的方法是

    设置WebViewClient

    它适用于基本的东西并运行 JavaScript,但不会确认点击按钮。

    我换了

    setWebChromeClient

    现在一切正常。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-05-03
      • 1970-01-01
      • 2017-01-02
      • 1970-01-01
      • 2011-06-04
      • 2011-04-18
      相关资源
      最近更新 更多