ساخت اپ اندرویدی با HTML , javaScript

خیلی وقتا یه استارت آپ کوچیک داریم که میخوایم خیلی سریع اپ و سایتشو بالا بیاریمگزینه های زیادی جلوی ما هست یکی از این گزینه ها html و جاوا اسکریپت وانیلی هست !که خب سایتشو راحت بالا میاریم و اپ اندروید و iOS هم همینطور !مشاهده این آموزش توی یوتوب (۲۷ دقیقه یا ۱۳ دقیقه دابل اسپید?)https://www.youtube.com/watch?v=ooyWwRs1XPMتوی سایت اندرویدhttps://developer.android.com/develop/ui/views/layout/webapps/webviewخیلی واضح گفته که این کار یکی از روش های ساخت وب اپلیکیشنه !درسته ! شما بدون اینکه فریم ورک خاصی بلد باشی یا حتی اندروید خیلی راحت میتونید با html و جاوا اسکریپت این کارو انجام بدید فقط باید اندروید استدیو داشته باشیدیه اپ اندروید ایجاد کنید با Empty Activityزبانشو Kotlin بذارید و Finishبعدش اینو بذارید توی res->layout->activity_main.xml<WebView app:layout_constraintBottom_toBottomOf=&quotparent&quot app:layout_constraintEnd_toEndOf=&quotparent&quot app:layout_constraintStart_toStartOf=&quotparent&quot app:layout_constraintTop_toTopOf=&quotparent&quot android:id=&quot@+id/webview&quot android:layout_width=&quotmatch_parent&quot android:layout_height=&quotmatch_parent&quot />بعد توی Java بگردین و MainActivity پیدا کنین و اینو توش بذاریدval myWebView: WebView = findViewById(R.id.webview) myWebView.loadUrl(&quothttp://www.google.com&quot)اینجوری :بعدش برید توی manifest و پرمیژن اینترنتو اد کنید <uses-permission android:name=&quotandroid.permission.INTERNET&quot />همینطور اینو بذارید توی تگ applicationandroid:usesCleartextTraffic=&quottrue&quotاینجوری :حالا ران بزنید !‌اگه گوگل لود بشه یعنی همه کارارو درست انجام دادیدحالا فقط کافیه روی لوکال یا هرجا که میخواین وب اپتونو توسعه بدین و بجای https://www.google.com آدرس اونو بذارید مثلا http://192.168.1.50:8000 یا هرجایی که دارید توسعه میدینفقط یادتون باشه آخر کار باید حتما بذارید روی هاستی که ssl باشه یعنی با https کار کنه و android:usesCleartextTraffic="true" از توی مانیفست پاک کنیدجاوا اسکریپتبرای فعال کردن جاوا اسکریپت کافیه این کارو انجام بدین :myWebView.settings.javaScriptEnabled = trueالان دیگه میتونید از متد های جاوا اسکریپت هم توی اپتون استفاده کنیدارتباط از جاوا اسکریپت به اندرویدبرای اینکه بتونید از توی جاوا اسکریپت یه متد توی اندروید اجرا کنید فقط کافیه یک اینترفیس براش درست کنید اونم به این سادگی !class WebAppInterface(private val mContext: Context) { /** Show a toast from the web page */ @JavascriptInterface fun showToast(toast: String) { Toast.makeText(mContext, toast, Toast.LENGTH_SHORT).show() } }فقط کافیه اینو توی کلاس MainActivity بذاریدو بعدش اینترفیسی که ساختید به وب‌ویو وصلش کنید اینجوری :webView.addJavascriptInterface(WebAppInterface(this), "Android")خب الان دیگه کار تموم شد ! فقط کافیه از توی صفحه وبتون متد های اینترفیستون رو اجرا کنید و لذت ببرید !مثلا<script type=&quottext/javascript&quot> Android.showToast(toast); ارتباط از اندروید به جاوااسکریپتحالا شاید بخواید یک متد توی وب‌ویو اجرا کنید !اینم خیلی سادست !فقط کافیه از evaluateJavascript استفاده کنید مثلا اینجوری myWebView.evaluateJavascript(&quotmyJsMethod()&quot,null)این هروقت اجرا بشه متد myJsMethod که توی جاوا اسکریپت ساختید اجرا میشه !البته اینا یک سری کامپتیبیلیتی ها و تنظیمات داره که توی کار متوجه میشیدبرای آشنایی بیشتر توی گوگل بزنید evaluateJavascript android و مثال هاشو ببنید