2016-07-02 69 views
9

Sự nhầm lẫn của tôi là liệu ứng dụng được tạo bằng Java hay Swift chỉ với một lần xem web được coi là một ứng dụng lai hoặc ứng dụng web. Tôi hiểu rằng một ứng dụng web sử dụng web gần như độc quyền, nhưng nếu đó là một webview thông qua một Java Webview là nó thực sự được coi là một ứng dụng web hoặc nó là một ứng dụng lai vì nó có tiềm năng sử dụng cả hai tính năng bản địa và ứng dụng web? Tôi nhận được các định nghĩa hỗn hợp về định nghĩa cụ thể này.Ứng dụng IOS và Android có xem web chỉ được xem là ứng dụng web hoặc ứng dụng web?

Google nói này về ứng dụng web:

Có chủ yếu là hai cách để cung cấp một ứng dụng trên Android: như một ứng dụng client-side (được phát triển bằng cách sử dụng Android SDK và cài đặt trên các thiết bị sử dụng trong một APK) hoặc dưới dạng ứng dụng web (được phát triển bằng các tiêu chuẩn web và được truy cập thông qua trình duyệt web — không có gì để cài đặt trên thiết bị của người dùng). https://developer.android.com/guide/webapps/index.html

Apple nói này về các ứng dụng web:

Một ứng dụng web được thiết kế để trông và hành xử theo một cách tương tự như một ứng dụng ví dụ như bản xứ, nó được thu nhỏ để phù hợp với toàn bộ màn hình trên iOS . Bạn có thể điều chỉnh ứng dụng web của mình cho Safari trên iOS hơn nữa bằng cách làm cho ứng dụng này xuất hiện như một ứng dụng gốc khi người dùng thêm ứng dụng đó vào Màn hình chính. Bạn thực hiện việc này bằng cách sử dụng cài đặt cho iOS bị các nền tảng khác bỏ qua.

https://developer.apple.com/library/ios/documentation/AppleApplications/Reference/SafariWebContent/ConfiguringWebApplications/ConfiguringWebApplications.html

Tại sao điều này quan trọng với tôi & tại sao tôi bận tâm yêu cầu? Tôi cần giải thích cho mọi người về sự khác biệt và tầm quan trọng giữa ba điều này khi nói về sự phát triển tương lai của một ứng dụng mới mà tôi đang tạo ra. Tôi mới vào thế giới ứng dụng và không hoàn toàn hiểu được sự đồng thuận về điều này và tôi muốn nghe có thẩm quyền khi tôi giải thích nó. Tôi sẽ xem xét một Java hoặc Swift làm App với một Webview chỉ là một ứng dụng Web và không phải là một ứng dụng Hybrid. Nhưng nó có thể trở thành một ứng dụng lai nếu được thêm vào. Tuy nhiên tôi có thể thấy nó là một ứng dụng lai từ đầu.

Trả lời

9

Kể từ khi tôi làm việc trên nó, tôi có thể chia sẻ sự hiểu biết của tôi về chủ đề này:

Ứng dụng lai: Các ứng dụng này được phát triển bằng các công nghệ web như HTML5, CSS và thường được lập trình bằng JavaScript. Tiếp theo, để họ có thể phân phối bằng cửa hàng Google Play hoặc App Store, chúng được tạo bằng cách sử dụng khung di động như PhoneGap hoặc Cordova. Kết quả này tạo ra tệp apk cho android và ipa cho iOS. Những tệp này sau đó có thể được triển khai và phân phối qua cửa hàng Google Play hoặc App Store.

Vì vậy, nó có mọi thứ của cả hai thế giới:

  1. cơ sở mã Tương tự cho cả Android và iOS (như họ đang phát triển sử dụng HTML/CSS/JS) và 2. Native ứng dụng như mô hình phân phối mà sử dụng Cửa hàng Google Play hoặc App Store. Do đó tên Hybrid.

Web Apps: Đây là những yếu truy cập thông qua một trình duyệt web không có gì để cài đặt trên các thiết bị sử dụng như một tập tin apk hoặc ipa. Chúng không được phân phối bằng cách sử dụng cửa hàng Google Play hoặc Apple Store. Thay vào đó, có thể truy cập bằng trình duyệt Web của Thiết bị và thích hợp URLs

Giới thiệu WebView Đây là tiện ích được cung cấp bởi Hệ điều hành cho phép ứng dụng hiển thị các trang web trong ứng dụng. Vì vậy, nếu bạn phát triển nói, một ứng dụng Android, sử dụng SDK Android chuẩn nhưng nó không sử dụng gì ngoài một số WebView, nó được coi là Ứng dụng gốc (và Không phải ứng dụng web hoặc ứng dụng web) vì nó đang sử dụng Thành phần SDK gốc (WebView). Ngoài ra, nó sẽ được phân phối thông qua cửa hàng Google Play hoặc App Store.

+3

Trong các ứng dụng lai, mã html & JavaScript cũng được đóng gói trong ứng dụng thực thi và do đó có thể hoạt động khi không có kết nối internet (miễn là kết nối internet không cần thiết cho chức năng ứng dụng). Ứng dụng web về cơ bản là trang web giả vờ là ứng dụng và do đó được tải xuống từ web mỗi khi bạn khởi động ứng dụng. – fishinear

+0

@fishinear Có, Đồng ý! Tôi đoán thuật ngữ Hybrid hơi mờ và không phải mọi thứ đều giống nhau. Nhưng những gì phân biệt các ứng dụng lai với các ứng dụng web là cách chúng được phân phối và triển khai. Như bạn đã nói, ứng dụng web giả vờ là ứng dụng nhưng ứng dụng lai là ứng dụng "thực" sống trên thiết bị của người dùng và được tải xuống bằng nền tảng ứng dụng cụ thể ... – AADProgramming

+0

Cảm ơn tất cả. Tôi đánh giá cao ý kiến! – applecrusher

3

WebView Giới thiệu

Webview cho phép các ứng dụng bên thứ 3 để hiển thị nội dung trong một trình duyệt trong ứng dụng hoặc trong một màn hình ứng dụng mà kéo từ web.

Android Webview là một thành phần của Android, nơi bạn có thể tải các trang HTML từ thư mục nội dung (nội dung) hoặc từ web.

Android WebView cho phép bạn chuyển đổi trang web sang ứng dụng Android của mình bằng cách xem URL hoặc trang đánh dấu HTML của riêng bạn.

WEP Apps

Trong Android bạn sử dụng Ứng dụng web, khi bạn không muốn tích hợp bất kỳ chức năng của Android.

Bạn hoàn toàn phụ thuộc vào các trang web của mình như (HTML, CSS, JAVASCRIPT, v.v ...).

Điều đó có nghĩa là không có sự khác biệt nào trong Trang web và Ứng dụng dành cho thiết bị di động của bạn.

Đây là ví dụ cơ bản về WebApps .....

Thêm những 2 phép trong file manifest ....

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
    <uses-permission android:name="android.permission.INTERNET" /> 

activity_web.xml

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <WebView 
     android:id="@+id/web" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" /> 

</RelativeLayout> 

WebActivity .....

import android.support.v7.app.AppCompatActivity; 
import android.os.Bundle; 
import android.view.View; 
import android.webkit.WebView; 

public class WebActivity extends AppCompatActivity { 

    private WebView mWeb; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_web); 

     mWeb = (WebView) findViewById(R.id.web); 
     mWeb.setWebViewClient(new MyBrowser());   
     mWeb.getSettings().setLoadsImagesAutomatically(true); 
     mWeb.getSettings().setJavaScriptEnabled(true);  
     mWeb.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY); 
     mWeb.loadUrl("https://www.google.co.in/"); 

    } 

    @Override 
    public void onBackPressed() {   //this is use for the accessing or impleament back button 
     if (mWeb.canGoBack()) 
      mWeb.goBack(); 
     else 
      super.onBackPressed(); 
    } 
} 

MyBrowser .... .

import android.webkit.WebView; 
import android.webkit.WebViewClient; 

public class MyBrowser extends WebViewClient { 
    @Override 
    public boolean shouldOverrideUrlLoading(WebView view, String url) { 
     view.loadUrl(url); 
     return true; 
    } 
} 

Apps lai

Trong Apps lai Chúng tôi có thể thực hiện chỉ hoạt động specfic của trang web.

Apps lai Ưu ....

tài inteface là hấp dẫn hơn .......

làm việc trên chế độ offline .........

Thu hút thêm thông tin của người dùng (như Thông tin di động).

Và thêm về việc sử dụng ........

Storages các tập tin (như: - hình ảnh, video, vv) ............

Trong Apps lai chúng ta đang thực hiện một số trang specfic như ...

thanh toán Gatways ......

chúng ta riêng QUẢNG CÁO (nó mất rất nhiều o f bộ nhớ để lưu trữ hình ảnh và video trong android) ........

và nhiều hơn nữa .........

Đó là tất cả tôi biết về WebView. .......

thưởng thức mã hóa ........

Các vấn đề liên quan