[英]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.