wab2app を使用して Web ページを APK にパッケージ化する

序文

オープンソース プロジェクト ChatGPT-Next-Web を通じてプライベート Web ページ ChatGPT をデプロイした後、アクセスをより便利にするために、wab2app を使用してそれを APK にパッケージ化することを考えました。最終的には効果が得られましたが、途中で多くの落とし穴に遭遇しました。道を記録してください

包装工程

HBuilder X をパッケージ化する Web サイトとソフトウェアがあります。ソフトウェア公式 Web サイト:https://www.dcloud.io/hbuilderx.html

その後、プロセスは次のようになります

プロジェクトを作成する

画像の説明を追加してください
画像の説明を追加してください
この部分では、Web ページとプロジェクト ファイルをパッケージ化するディレクトリを設定します。

画像の説明を追加してください
マニフェスト.json ファイルを見つけて、関連する設定を順に設定します
画像の説明を追加してください
アダプティブ アイコンを設定します この機能は、木製レターにはない重要なポイントです
画像の説明を追加してください
画像の説明を追加してください
:タイトル バーとステータス バーを互換性のあるものに設定する

画像の説明を追加してください
画像の説明を追加してください
キーポイント:デフォルトでは、どのページに戻っても、前のレイヤーに戻るのではなく、ソフトウェアを直接終了します。この設定を変更する必要があります。

画像の説明を追加してください
client_index.html に次のコードを挿入します。注意が必要です: plus.webview.create はパッケージ化する URL を入力します。

<script>

    function plusReady() {

        var zxlmweb = plus.webview.create("https://gpt.songhuashu.cn")

        zxlmweb.show(); // 显示窗口

        var first = null;

        plus.key.addEventListener("backbutton", function() { //监听返回按键

            zxlmweb.canBack(function(e) { //监听webview窗口是否可以返回

                if(e.canBack) { //可以返回

                    zxlmweb.back(); //返回上一页面

                } else { //不可以返回

                    //处理逻辑:1秒内,连续两次按返回键,则退出应用;

                    //首次按键,提示‘再按一次退出应用’

                    if (!first) {

                        first = new Date().getTime();

                        this.$toast('再按一次退出应用');

                        setTimeout(function() {

                            first = null;

                        }, 1000);

                    } else {

                        if (new Date().getTime() - first < 1000) {

                            plus.runtime.quit();//退出app

                        }

                    }

                }

            });

        }, false);

    }

    if(window.plus) {

        plusReady();

    } else {

        document.addEventListener('plusready', plusReady, false);

    }

</script>

そしたら梱包されてるよ

画像の説明を追加してください

画像の説明を追加してください
画像の説明を追加してください

また問題もあります。リターンキーを押すと、プロンプトが表示されます。再按一次返回键退出点此可反馈意见

解決策は次のとおりです。

画像の説明を追加してください
画像の説明を追加してください

画像の説明を追加してください

場合によってはこのようなことが起こる可能性があります

まずはWebサイトが正常に開けるかどうかを確認し、機内モードがオンにできる場合は再度更新してください。

場合によっては、一部の Web サイトは Wi-Fi でのみ開くことができ、データ トラフィックでは開けないことがありますが、これはほとんどありません。

最終効果

梱包プロセス中に多くの問題に遭遇し、最終的には解決しましたが、最も一般的なものは上記のとおりです。

また、クラウドパッケージングのノルマは1日5件と妥当ですが、私は得意なので3つのアカウントを登録し、それぞれのアカウントがプロジェクト管理者となり、パッケージ化するのに十数回かかりました外

参考記事

https://www.jianshu.com/p/43aecebfd57b

https://ask.dcloud.net.cn/question/86896

https://ask.dcloud.net.cn/article/1150

エピローグ

最終的に、ChatGPT をデプロイした Web ページを APK に正常にパッケージ化できました。これは悪くありません。

おすすめ

転載: blog.csdn.net/lion_no_back/article/details/131155661