Silverlight - Ứng dụng ngoài trình duyệt
Bây giờ chúng ta sẽ khám phá sự hỗ trợ của Silverlight cho các ứng dụng có thể được cài đặt trên máy của người dùng cuối để chạy bên ngoài trình duyệt web giống như một ứng dụng Windows bình thường. Có ba lý do chính mà bạn có thể muốn ứng dụng của mình có thể chạy ngoài trình duyệt -
- Interaction
- Offline
- Niềm tin nâng cao
Sự tương tác
Nó có thể cho phép thiết kế tương tác tốt hơn. Mô hình điều hướng của web không phù hợp đặc biệt với một số ứng dụng. Ví dụ: thanh Địa chỉ và nút Quay lại có thể tốn dung lượng và vô dụng.
Tầm quan trọng của Silverlight ở đây như dưới đây:
Các ứng dụng web có thể sử dụng các công nghệ phía máy khách, chẳng hạn như Silverlight, Flash hoặc AJAX để cung cấp các bản cập nhật liên tục cho một trang, có thể loại bỏ mọi nhu cầu điều hướng đến các trang khác.
Trong một số ứng dụng, người dùng có thể dành nhiều phút, hoặc thậm chí hàng giờ trên những gì mà trình duyệt coi là một trang.
Đối với loại ứng dụng này, Back nút có thể có tác dụng khá bất ngờ khi thoát ứng dụng vì nó sẽ đưa bạn trở lại bất kỳ trang nào bạn đã truy cập trước khi vào ứng dụng.
Đặc biệt, các ứng dụng không giống web thường được phục vụ tốt hơn khi chạy ra khỏi trình duyệt, vì điều đó sẽ loại bỏ trình duyệt Chrome. Nói chung, khả năng sử dụng không phải là lý do duy nhất để hết trình duyệt.
Ngoại tuyến
Một lý do khác để sử dụng tính năng này là cho phép thực thi ngoại tuyến. Khi ứng dụng Silverlight được cài đặt để hoạt động ngoài trình duyệt, ứng dụng đó sẽ được sao chép vào kho lưu trữ cho mỗi người dùng trên máy cục bộ và trở nên khả dụng thông qua các cơ chế hệ điều hành thông thường để khởi chạy ứng dụng, chẳng hạn như menu Bắt đầu trên Windows.
Sau đó, ứng dụng sẽ khả dụng ngay cả khi người dùng không có kết nối internet.
Rõ ràng, điều này chỉ hữu ích cho các ứng dụng không phụ thuộc hoàn toàn vào thông tin phía máy chủ.
Ví dụ, một ứng dụng theo dõi tự động cho dịch vụ chuyển phát bưu kiện sẽ không được sử dụng nhiều nếu không có kết nối mạng.
Đối với một số ứng dụng, khả năng tiếp tục hoạt động trong những lúc kết nối không thường xuyên là rất hữu ích.
Niềm tin nâng cao
Phiên bản 4 của Silverlight đã thêm hỗ trợ cho các ứng dụng đáng tin cậy. Hộp cát bảo mật của Silverlight thường chặn các hoạt động đặc quyền nhất định, chẳng hạn như truy cập tệp của người dùng.
Tuy nhiên, một ứng dụng ngoài trình duyệt có thể yêu cầu nâng cao. Nếu người dùng đưa ra yêu cầu đó, ứng dụng có thể thực hiện nhiều loại công việc hơn mà bất kỳ ứng dụng Windows bình thường nào cũng có thể làm, chẳng hạn như sử dụng COM Automation hoặc tùy chỉnh đường viền cửa sổ.
Các ứng dụng chạy bên trong trình duyệt không bao giờ đáng tin cậy, vì vậy bạn phải viết một ứng dụng ngoài trình duyệt nếu muốn sử dụng các tính năng này.
Bật OOB
Làm cách nào để viết một ứng dụng ngoài trình duyệt? Nó rất dễ. Chúng tôi phải thay đổi một cài đặt duy nhất trong các thuộc tính dự án của Silverlight và nó chỉ thêm một cài đặt phù hợp choAppManifest.xaml.
Hãy để chúng tôi xem nó hoạt động như thế nào.
Khi tệp kê khai của bạn cho biết rằng thực thi ngoài trình duyệt được hỗ trợ, điều này không có tác dụng ban đầu. Ứng dụng sẽ chạy trong trình duyệt như bình thường.
Tuy nhiên, nếu người dùng nhấp chuột phải, Silverlight tiêu chuẩn ContextMenu cung cấp một mục bổ sung để cài đặt ứng dụng trên máy tính.
Nếu người dùng chọn mục đó, một hộp thoại xuất hiện yêu cầu xác nhận. Nó cũng hỏi liệu ứng dụng có nên truy cập được từ menu Bắt đầu, Màn hình nền hay cả hai hay không.
Bạn không cần phải dựa vào menu ngữ cảnh. Bạn cũng có thể đưa ra một nút mà người dùng có thể nhấp vào để cài đặt ứng dụng, vì có một API, bạn có thể gọi để bắt đầu cài đặt.
Khi bạn bắt đầu cài đặt theo chương trình, người dùng vẫn thấy hộp thoại. Bạn không thể cài đặt ứng dụng của mình mà không có sự đồng ý của người dùng.
Một ứng dụng Silverlight
Đây là một ứng dụng Silverlight rất đơn giản. Dưới đây là mã XAML của nó.
<UserControl x:Class = "SimpleOob.MainPage"
xmlns = "http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x = "http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d = "http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc = "http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable = "d"
d:DesignHeight = "300" d:DesignWidth = "400">
<Grid x:Name = "LayoutRoot" Background = "White">
<Border BorderBrush = "Blue" BorderThickness = "4" CornerRadius = "20" >
<Border.Background>
<LinearGradientBrush StartPoint = "0,0" EndPoint = "0,1">
<GradientStop Offset = "0.0" Color = "White" />
<GradientStop Offset = "0.15" Color = "#cef" />
<GradientStop Offset = "1.0" Color = "White" />
</LinearGradientBrush>
</Border.Background>
<TextBlock HorizontalAlignment = "Center" VerticalAlignment = "Center"
Text = "Silverlight Application" TextOptions.TextHintingMode = "Animated"
TextAlignment = "Center" TextWrapping = "Wrap"
FontSize = "72" FontFamily = "Trebuchet MS" >
<TextBlock.Effect>
<DropShadowEffect Color = "#888" />
</TextBlock.Effect>
</TextBlock>
</Border>
</Grid>
</UserControl>
Step 1 - Để cho phép thực thi ngoài trình duyệt, hãy chuyển đến phần của dự án Propertiesvà nhấp vào tab Silverlight. Tất cả những gì chúng ta cần làm là - kiểm traEnable running application out of the browser hộp kiểm.
Nếu bạn chạy ứng dụng này, bạn sẽ nhận thấy rằng bạn sẽ không nhận được một trình duyệt web nào cả.
Trên thực tế, Visual Studio đã thay mặt bạn đưa ra quyết định. Khi bạn bậtout-of-browser thực thi, nó đã thay đổi cài đặt gỡ lỗi của bạn một cách không công bằng.
Step 2 - Vì vậy, ở đây trong Solution Explorer, lưu ý rằng dự án Silverlight hiện được in đậm, cho biết rằng đó là một dự án khởi nghiệp.
Đó không phải là trường hợp trước đây. Đó là dự án web. Ngay bây giờ, chúng tôi không muốn điều đó, bởi vì chúng tôi muốn hiển thị cách hộp kiểm đó thay đổi mọi thứ cho người dùng cuối.
Step 3 - Chúng tôi sẽ đặt dự án web trở lại là Dự án StartUp.
Step 4 - Chạy lại ứng dụng, và bạn sẽ thấy ứng dụng đã trở lại trình duyệt ngay bây giờ.
Step 5- Nhấp chuột phải vào trang web. Bạn sẽ thấy mục Silverlight thông thường trong menu ngữ cảnh và một mục bổ sung để cài đặt.
Step 6 - Khi bạn chọn tùy chọn thứ hai, hộp thoại Cài đặt ứng dụng xuất hiện như hình bên dưới.
Lưu ý rằng nó hiển thị URL gốc của trang web, ứng dụng đến từ đâu. Chúng tôi đang sử dụng máy chủ web gỡ lỗi cục bộ do Visual Studio cung cấp, đó là lý do tại sao nó nói localhost.
Step 7 - Bấm OKvà ứng dụng chạy trong cửa sổ riêng tách biệt với trình duyệt.
Có thể tự nhiên khi nghĩ rằng cửa sổ này được sở hữu bằng cách nào đó hoặc được kết nối với trình duyệt, nhưng không phải vậy. Bạn có thể đóng trình duyệt và cửa sổ này vẫn tồn tại. Quan trọng hơn, bạn có thể đóng cửa sổ này, sau đó chạy lại ứng dụng mà không cần sử dụng trình duyệt.
Step 8 - Nếu bạn mở Search hộp thoại trong Start và bắt đầu nhập tên ứng dụng, nó sẽ hiển thị giống như bất kỳ ứng dụng Windows bình thường nào.
Step 9 - Bạn có thể chạy nó mà không cần trình duyệt ở bất kỳ đâu trong tầm nhìn.
Để gỡ cài đặt ứng dụng
Menu ngữ cảnh mặc định trên ứng dụng cung cấp một cách dễ dàng để thực hiện điều đó. Một người dùng hợp lý có thể mong đợi gỡ cài đặt này giống như cách họ làm với bất kỳ ứng dụng nào khác.
Bạn cũng có thể xóa bằng cách nhấp chuột phải vào trang web và chọn Remove this application….
Cài đặt OOB
Mặc dù chúng tôi chỉ phải thay đổi một cài đặt duy nhất để cho phép hoạt động ngoài trình duyệt, nhưng trên thực tế, thông thường bạn sẽ muốn làm nhiều hơn thế một chút. CácAppManifest.xaml tệp có thể chứa một số cài đặt liên quan đến out-of-browser hoạt động mà chúng tôi thường cấu hình thông qua Visual Studio.
Như bạn có thể đã nhận thấy, khi bạn chọn hộp kiểm để bật running out-ofbrowser, Visual Studio đã bật một nút có nhãn Out-of-Browser Settings.
Hãy để chúng tôi xem xét nó bằng cách nhấp vào nút. Nó sẽ tạo ra hộp thoại sau.
Điều đầu tiên chúng ta có thể định cấu hình là văn bản xuất hiện dưới dạng Window Title.
Chúng tôi cũng có tùy chọn để sửa kích thước và vị trí cửa sổ, nhưng chúng tôi sẽ để chúng ở chế độ tự động ngay bây giờ.
Tên lối tắt này xuất hiện trong Start và liên kết Máy tính để bàn cho ứng dụng sau khi ứng dụng được cài đặt.
Đây cũng là văn bản xuất hiện trong menu ngữ cảnh và hộp thoại cài đặt ứng dụng.
Mô tả Ứng dụng này xuất hiện trong mẹo công cụ khi tôi di chuột qua các phím tắt.
Chúng tôi có thể cung cấp các biểu tượng ở nhiều kích cỡ khác nhau. Chúng phải được xây dựng trong dự án của bạn.