Spaces:
Build error
Build error
| from flask import Flask, request, send_file | |
| import os | |
| import subprocess | |
| app = Flask(__name__) | |
| def home(): | |
| return ''' | |
| <h2>Web to APK Builder</h2> | |
| <form method="POST" action="/build"> | |
| <input name="url" placeholder="https://your-site.com" style="width:300px;"> | |
| <button type="submit">Build APK</button> | |
| </form> | |
| ''' | |
| def build(): | |
| url = request.form.get("url") | |
| project_name = "myapp" | |
| # حذف مشروع قديم | |
| if os.path.exists(project_name): | |
| subprocess.run(["rm", "-rf", project_name]) | |
| # إنشاء مشروع Capacitor | |
| subprocess.run(["npx", "create-react-app", project_name]) | |
| os.chdir(project_name) | |
| # تثبيت Capacitor | |
| subprocess.run(["npm", "install", "@capacitor/core", "@capacitor/cli"]) | |
| subprocess.run(["npx", "cap", "init", "MyApp", "com.example.myapp"]) | |
| # تعديل WebView لفتح URL | |
| with open("src/App.js", "w") as f: | |
| f.write(f""" | |
| import React from "react"; | |
| function App() {{ | |
| window.location.href = "{url}"; | |
| return <h1>Loading...</h1>; | |
| }} | |
| export default App; | |
| """) | |
| subprocess.run(["npm", "run", "build"]) | |
| subprocess.run(["npx", "cap", "add", "android"]) | |
| subprocess.run(["npx", "cap", "copy"]) | |
| # بناء APK | |
| os.chdir("android") | |
| subprocess.run(["./gradlew", "assembleDebug"]) | |
| apk_path = "app/build/outputs/apk/debug/app-debug.apk" | |
| return send_file(apk_path, as_attachment=True) | |
| if __name__ == "__main__": | |
| app.run() |