[英]How can I run PHP Code locally within a WebView App?
所以我收到了一個嚴格限制的項目,我需要為 WebView 應用程序運行存儲在本地應用程序目錄中的 php 文件。 但是我什至不知道從哪里開始實施或整合
我在google play看到以下app,聲稱有php server、mysql等。
https://play.google.com/store/apps/details?id=com.sylkat.apache
所以我知道有可能在 android 應用程序中運行 php 文件。
我的想法是,
我在這個問題中不尋求什么
我知道 php 是服務器端代碼。
如果您希望在現代 Android 設備上運行 PHP 代碼,這是您面臨的挑戰列表。
我搜索了一些項目,發現一些項目暗示 PHP 可以在 Android 上運行
雖然我不能談論任何閉源項目,但有一些開源項目, DroidPHP和更新的MyServer和lampTermux 。 但是需要一些歷史/背景來理解這些項目代表什么。
PHP 是用 C/C++ 編寫的。 雖然 Android 確實通過 Android NDK 支持 C/C++,但缺少的是 PHP 服務器期望在Android 不支持開箱即用的恆定功率Posix 兼容環境中運行。
第一個DroidPHP
似乎被作者拋棄了,它使用Busybox ,它提供了一個 POSIX 兼容的環境,但需要超級用戶/root 權限,這需要“root”Android 設備。 請注意,“生根”通常會使設備保修失效。
多年來,Android 生態系統擁有數十億用戶,提高了每個版本的安全性,減少了任何不良行為者的攻擊面。
其他兩個 github 項目使用Termux ,它提供了一個類似 POSIX 的環境,可以與 root 一起使用,並且在沒有 root 的情況下以更有限的方式使用。
嘿,聽起來不錯,所以我可以使用
Termux
來運行我的 PHP 代碼。
一些警告:
Android 制造商已經添加了他們自己的省電處理,從而產生了一個類似的網站: https ://dontkillmyapp.com/ 如果您的應用只在前台運行,那么您可能是安全的。
來自關於 Android 12 的 Termux 存儲庫自述文件:
注意: Termux 在 Android 12 上已損壞。Android 操作系統將終止任何大於 32 的(幻像)進程(限制適用於所有應用程序的組合),並且還會終止任何使用過多 CPU 的進程。
是的,因為 Termux 是開源的並且使用 GNU GPL v3.0 並且在某些組件中使用 Apache-2.0 許可證,所以只要滿足許可證要求,您就可以自由地重用現有組件。
但是,許可證不包括“免費”使用我們的托管功能,這在一定程度上是有限的。 您不能在自己的項目中使用我們的包存儲庫。 請自行構建包並托管它們。
開始使用開發人員 wiki 頁面上的信息: https ://github.com/termux/termux-packages/wiki。
Termux
(及其操作要求)當前不兼容。如果您關注嵌入的嘗試問題線程,您會看到嵌入是一個涉及的過程。
資料來源: https ://www.reddit.com/r/termux/comments/p3exkr/how_can_i_make_an_android_apk_app_based_on_termux/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.