Рубрики
Без рубрики

Android Native и JavaScript Связывание

Сейчас мы все знаем о разработке гибридных приложений. Это действительно становится популярным, он дает нам воду … Tagged с Android, Java, Python, WebDev.

Сейчас мы все знаем о разработке гибридных приложений. Это действительно становится популярным, он дает нам силу, как нативную реализацию, не жертвуя лотами. Как разработчик Web & Android, нам нужно вместе объединить наше Android и веб -приложение. Android и iOS дают использовать эти типы доступа через WebKit.

Как разработчик, нам нужно преобразовать наш веб -сайт в мобильное приложение, а затем задача возникла. Чтобы отобразить любой веб -сайт, мы используем WebView в Android и превращаем веб -сайт в мобильное приложение. Но когда нам нужна производительность и аппаратная поддержка, нам нужно больше, а не просто реализации WebView. Кроме того, мы хотим понадобиться пользовательский контроль через собственную логику.

Итак, сегодняшние разговоры, которые я собираюсь продемонстрировать, как мы можем взять на себя индивидуальный контроль на веб -страницах через интерфейс Webkit.

Давайте глубоким внедрением в реализации. Создайте пустой Android Project и следуйте указаниям ниже,

🔰 Open MainActivity.java Файл и включает

import android.annotation.SuppressLint;
import android.os.Bundle;
import android.webkit.WebView;
import android.webkit.WebViewClient;

import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {
    WebView webView;

    @SuppressLint("SetJavaScriptEnabled")
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        webView = (WebView) findViewById(R.id.webView);



        webView.getSettings().setJavaScriptEnabled(true);       // must enable javascript
        webView.setWebViewClient(new WebViewClient());          // must add web client

        // Binding
        webView.addJavascriptInterface(
                new CommonInterface(getApplicationContext()), "Android"
        );


        String folderPath = "file:android_asset";    // Get the Android assets folder path
        String fileName = "/sample.html";            // Get the HTML file name
        String file = folderPath + fileName;         // Get the exact file location
        webView.loadUrl(file);                       // load file or https://mesadhan.github.io
    }
}

🔰 Создать CommonInterface.java Файл и включает

import android.content.Context;
import android.webkit.JavascriptInterface;
import android.widget.Toast;

/** Accessible from the web page */

public class CommonInterface {
    Context context;

    CommonInterface(Context c) {
        context = c;
    }

    @JavascriptInterface
    public void showToast(String toast) {
        Toast.makeText(context, toast, Toast.LENGTH_SHORT).show();
    }

    @JavascriptInterface
    public String getMessage() {
        return "Hello From Android Native!";
    }
}

🔰 Open Activity_main.xml Файл и включает




    


Наконец, нам нужна веб -страница, которая на самом деле играет главную роль здесь

🔰 Создайте файл в /Assets/sample.html и включает


    
    Sample Web Page
    




Android WebView







👌 Поздравляю!. & Благодарю вас! Не стесняйтесь комментариев, если у вас есть какие -либо проблемы и запросы.

Рекомендации:

Оригинал: “https://dev.to/mesadhan/android-native-javascript-binding-2ja7”