国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

.NET MAUI Android 對接商米移動手持終端打印JAVA SDK

這篇具有很好參考價(jià)值的文章主要介紹了.NET MAUI Android 對接商米移動手持終端打印JAVA SDK。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

一、前言(整個(gè)流程除了調(diào)整打印模板位子,操作下來還是挺快的 幾分鐘就搞定,文章圖片比較多大家可能感覺操作比較麻煩,其實(shí)挺簡單的)

  因甲方需求,需要對現(xiàn)項(xiàng)目進(jìn)行升級,需要增加移動手持終端進(jìn)行巡檢,巡檢時(shí)還需要對商品進(jìn)行抽檢并打印熱敏不干膠標(biāo)簽進(jìn)行貼到抽樣樣品上。在這樣的背景下便在JD進(jìn)行了采樣,進(jìn)行技術(shù)性研究。本文章將一步一步教大家如何使用.NET MAUI 來集成java printerx 來實(shí)現(xiàn)使用MAUI 在移動終端上進(jìn)行標(biāo)簽打印。 下方是采購的移動終端設(shè)備。

.NET MAUI Android 對接商米移動手持終端打印JAVA SDK

二、下載AAR 開發(fā)SDK

 通過官方文檔我們得知 設(shè)備的打印SDK包是?printerx,開發(fā)包是JAVA開發(fā)的,這種情況如何使用MAUI進(jìn)行對接呢?這難不倒我們,我們今天就用.NET MAUI 來進(jìn)行集成?printerx

.NET MAUI Android 對接商米移動手持終端打印JAVA SDK

? 1、打開https://mvnrepository.com 網(wǎng)站,搜索 printerx

?  https://mvnrepository.com/search?q=printerx?

.NET MAUI Android 對接商米移動手持終端打印JAVA SDK

?2、點(diǎn)擊?printerx 進(jìn)去后,我們選擇最新版 “1.0.14”

.NET MAUI Android 對接商米移動手持終端打印JAVA SDK

3、然后點(diǎn)擊?View All?,將看到如下界面。

.NET MAUI Android 對接商米移動手持終端打印JAVA SDK

?4、第一個(gè)?printerx-1.0.14.aar 是我們需要下載的文件,點(diǎn)擊將來文件下載到本地桌面。

.NET MAUI Android 對接商米移動手持終端打印JAVA SDK

三、在MAUI中集成AAR SDK

  1、是用VS2022 新建MAUI項(xiàng)目(.NET 7),然后添加新項(xiàng)目“Android 綁定庫(Xmarin)”,沒有“Android 綁定庫(Xmarin)”的在installer中選擇安裝 Xmarin。

.NET MAUI Android 對接商米移動手持終端打印JAVA SDK

.NET MAUI Android 對接商米移動手持終端打印JAVA SDK

2、打開“Android 綁定庫(Xmarin)”項(xiàng)目,打開 Jars文件夾,將之前下載的?printerx-1.0.14.aar 拷貝進(jìn)文件夾內(nèi)。

.NET MAUI Android 對接商米移動手持終端打印JAVA SDK

?3、右擊?printerx-1.0.14.aar 選擇屬性,將生成操作選擇 “LibraryProjectZip”。

.NET MAUI Android 對接商米移動手持終端打印JAVA SDK

?4、查看項(xiàng)目屬性,和我的保持一致。

.NET MAUI Android 對接商米移動手持終端打印JAVA SDK

?5、將MAUI項(xiàng)目中 安卓端引用?“Android 綁定庫(Xmarin)”項(xiàng)目。

.NET MAUI Android 對接商米移動手持終端打印JAVA SDK

6、應(yīng)為前幾次測試的時(shí)候,WIndows、IOS端有報(bào)錯提示不兼容發(fā)生,我將其他端都刪掉了,只保留了安卓端。

四、調(diào)試移動終端

1、為了方便測試 我把代碼寫到了"MainPage.xaml.cs",MAUI自動生成的代碼沒有刪除,也再文件中。以下是完整代碼,應(yīng)為是技術(shù)性測試所以代碼寫的不是很規(guī)范,打印標(biāo)簽的位子也是寫的很隨意,正式放到項(xiàng)目中將優(yōu)化。

using Android.Icu.Text;
using Com.Sunmi.Printerx;
using Java.Interop;
using Java.Util;

namespace MauiApp1
{
    public partial class MainPage : ContentPage
    {
        int count = 0;

        public MainPage()
        {
            InitializeComponent();
        }


        public Com.Sunmi.Printerx.PrinterSdk.Printer Printer;
        private void OnCounterClicked(object sender, EventArgs e)
        {
            var listen = new PrinterListen();
            Com.Sunmi.Printerx.PrinterSdk.Instance.GetPrinter(
                Android.App.Application.Context, listen
                );
           

            count++;

            if (count == 1)
                CounterBtn.Text = $"Clicked {count} time";
            else
                CounterBtn.Text = $"Clicked {count} times";

            SemanticScreenReader.Announce(CounterBtn.Text);
        }

        public class PrintResult2 : Com.Sunmi.Printerx.Api.PrintResult
        {
            
            public override void OnResult(int p0, string p1)
            {
                
            }
        }
       //獲取打印機(jī)監(jiān)
        public class PrinterListen : Java.Lang.Object, Com.Sunmi.Printerx.PrinterSdk.IPrinterListen
        {
            public Com.Sunmi.Printerx.PrinterSdk.Printer Printer;
            

            public void OnDefPrinter(PrinterSdk.Printer p0)
            {
                this.Printer  = p0;//獲取到打印機(jī)
                
                var api = Printer.CanvasApi();
                
                api.InitCanvas(Com.Sunmi.Printerx.Style.BaseStyle.Style.SetWidth(52*8).SetHeight(35*8));//初始化
                api.RenderArea(Com.Sunmi.Printerx.Style.AreaStyle.Style.SetWidth(49*8).SetHeight(33*8)//設(shè)置打印區(qū)域
                    .SetStyle(Com.Sunmi.Printerx.Enums.Shape.RectWhite)
                    .SetPosX(0).SetPosY(0));
                api.RenderText("標(biāo)題",  //打印字符串
                    Com.Sunmi.Printerx.Style.TextStyle.Style
                   .SetAlign(Com.Sunmi.Printerx.Enums.Align.Center)
                    .SetTextSize(32)
                    .SetPosX(208).SetPosY(16)
                    );
                api.RenderText("商品名稱(車牌號)", 
                 Com.Sunmi.Printerx.Style.TextStyle.Style
                     .SetAlign(Com.Sunmi.Printerx.Enums.Align.Center)
                 .SetTextSize(30)
                 .SetPosX(208).SetPosY(40 + 10)
                 .EnableBold(true)

                 );

                api.RenderBarCode("2311202003400013",//打印條形碼
                   Com.Sunmi.Printerx.Style.BarcodeStyle.Style
                       .SetAlign(Com.Sunmi.Printerx.Enums.Align.Center)
                   .SetPosX(208).SetPosY(38+12+30)
                   .SetBarHeight(80).SetDotWidth(3)
                   .SetWidth(350)
                   );

                api.RenderText("2311202003400013",
                  Com.Sunmi.Printerx.Style.TextStyle.Style
                      .SetAlign(Com.Sunmi.Printerx.Enums.Align.Center)
                 // .SetTextSize(24)
                  .SetPosX(208).SetPosY(38+32+95)

                  );
                api.RenderText("商戶姓名:姓名007",
                Com.Sunmi.Printerx.Style.TextStyle.Style
                  //  .SetAlign(Com.Sunmi.Printerx.Enums.Align.Center)
                // .SetTextSize(20)
                 .EnableBold(true)
                .SetPosX(30).SetPosY(38 + 32 + 100  +23)

                );

                api.RenderText("抽樣時(shí)間:2023-11-02 13:00",
            Com.Sunmi.Printerx.Style.TextStyle.Style
                  .EnableBold(true)
            .SetPosX(30).SetPosY(38 + 32 + 100  +25+25)

            );
                var printReuslt = new PrintResult2();
                api.PrintCanvas(1, printReuslt);

            }

            public void OnPrinters(IList<PrinterSdk.Printer> p0)
            {
                this.Printer.Dispose();
            }
        }
    }

}

五、完成對接

?通過以上操作便可以打印出標(biāo)簽了,以下是測試效果。

.NET MAUI Android 對接商米移動手持終端打印JAVA SDK?.NET MAUI Android 對接商米移動手持終端打印JAVA SDK

?文章來源地址http://www.zghlxwxcb.cn/news/detail-747539.html

到了這里,關(guān)于.NET MAUI Android 對接商米移動手持終端打印JAVA SDK的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • [MAUI]在.NET MAUI中復(fù)刻蘋果Cover Flow

    [MAUI]在.NET MAUI中復(fù)刻蘋果Cover Flow

    @ 目錄 原理 3D旋轉(zhuǎn) 平行變換 創(chuàng)建3D變換控件 繪制封面圖片 應(yīng)用3D旋轉(zhuǎn) 應(yīng)用平行變換 繪制倒影 創(chuàng)建綁定屬性 創(chuàng)建綁定數(shù)據(jù) 創(chuàng)建布局 計(jì)算位置 計(jì)算3D旋轉(zhuǎn) 創(chuàng)建動效 項(xiàng)目地址 Cover Flow是iTunes和Finder中的一個(gè)視圖選項(xiàng),允許用戶使用水平滾動的圖像查看他們的音樂庫或文件。

    2024年02月05日
    瀏覽(16)
  • [MAUI]在.NET MAUI中實(shí)現(xiàn)可拖拽排序列表

    [MAUI]在.NET MAUI中實(shí)現(xiàn)可拖拽排序列表

    .NET MAUI 中提供了拖放(drag-drop)手勢識別器,允許用戶通過拖動手勢來移動控件。在這篇文章中,我們將學(xué)習(xí)如何使用拖放手勢識別器來實(shí)現(xiàn)可拖拽排序列表。在本例中,列表中顯示不同大小的磁貼(Tile)并且可以拖拽排序。 使用.NET MAU實(shí)現(xiàn)跨平臺支持,本項(xiàng)目可運(yùn)行于Andro

    2024年02月12日
    瀏覽(13)
  • .NET MAUI 性能提升

    .NET MAUI 性能提升

    .NET多平臺應(yīng)用程序UI (MAUI)將android、iOS、macOS和Windows API統(tǒng)一為一個(gè)API,這樣你就可以編寫一個(gè)應(yīng)用程序在許多平臺上本機(jī)運(yùn)行。我們專注于提高您的日常生產(chǎn)力以及您的應(yīng)用程序的性能。我們認(rèn)為,開發(fā)人員生產(chǎn)率的提高不應(yīng)該以應(yīng)用程序性能為代價(jià)。 應(yīng)用程序的大小也是如

    2024年02月07日
    瀏覽(21)
  • [MAUI]深入了解.NET MAUI Blazor與Vue的混合開發(fā)

    [MAUI]深入了解.NET MAUI Blazor與Vue的混合開發(fā)

    .NET MAUI結(jié)合Vue的混合開發(fā)可以使用更加熟悉的Vue的語法代替Blazor語法,你現(xiàn)有項(xiàng)目不必重寫。之前寫過一篇 [MAUI] 在.NET MAUI中結(jié)合Vue實(shí)現(xiàn)混合開發(fā) ,其中介紹了如何創(chuàng)建一個(gè)vue應(yīng)用并將其打包至MAUI項(xiàng)目,這種方式依賴vue-cli創(chuàng)建和打包靜態(tài)站點(diǎn),好處是可以使用Node.js 的構(gòu)建但

    2024年02月08日
    瀏覽(50)
  • 基于Sane成功解決路由器改OpenWrt打印掃描服務(wù)器的手機(jī)移動端(IOS、Android)掃描功能實(shí)現(xiàn)問題

    基于Sane成功解決路由器改OpenWrt打印掃描服務(wù)器的手機(jī)移動端(IOS、Android)掃描功能實(shí)現(xiàn)問題

    家里有一臺HP打印掃描一體機(jī)HP DJ 2300 series PCL-3,不具備打印和掃描功能。之后買了一個(gè)TPlink的wr703n路由器,刷了OpenWrt系統(tǒng),安裝p910nd,通過9100端口的方式實(shí)現(xiàn)了無線打印(具體看我寫的這篇:TP-LINK-TL-WR703N(原裝)制作打印服務(wù)器過程記錄整理)。但在后期的使用過程中,

    2024年02月06日
    瀏覽(85)
  • 宣布 .NET MAUI 支持 .NET 7 Release Candidate 2

    宣布 .NET MAUI 支持 .NET 7 Release Candidate 2

    支持 .NET 7 Release Candidate 2的 .NET 多平臺應(yīng)用程序 UI (MAUI) 現(xiàn)在可在 Windows 和 Mac 上的 Visual Studio 17.4 Preview 4 中使用。RC2 的主要主題是質(zhì)量和對帶有 iOS 16 的 Xcode 14 的 .NET 支持。此版本包含在生產(chǎn)中使用的上線支持許可證。 在相關(guān)新聞中,還為 MSAL.NET 和 App Center(預(yù)覽版)提供

    2024年02月10日
    瀏覽(19)
  • .NET MAUI 安卓 UI 資源設(shè)置

    .NET MAUI 安卓 UI 資源設(shè)置

    本文主要介紹使用 MAUI 開發(fā)安卓應(yīng)用時(shí),如何更換和處理 UI 資源:應(yīng)用名稱,圖標(biāo),主題配色,狀態(tài)欄,閃屏。 平常比較喜歡看小說,但是不知道從何時(shí)起,已經(jīng)找不到一個(gè)純粹的本地小說閱讀器了。也能理解,畢竟不能只靠愛心發(fā)電,在線資源也就算了,我本地的 TXT 你也

    2024年02月10日
    瀏覽(22)
  • 【C#/.NET】MAUI上的依賴注入

    【C#/.NET】MAUI上的依賴注入

    ? ????????在移動應(yīng)用開發(fā)中,依賴注入是一項(xiàng)非常重要的技術(shù),它可以幫助我們簡化代碼結(jié)構(gòu)、提高可維護(hù)性并增加測試覆蓋率。在最新的.NET跨平臺框架MAUI中,我們也可以利用依賴注入來構(gòu)建高效的應(yīng)用程序架構(gòu)。本文將詳細(xì)介紹在MAUI上如何使用依賴注入,旨在幫助

    2024年02月11日
    瀏覽(25)
  • Visual Studio 2022 正式支持 .NET MAUI 開發(fā)

    Visual Studio 2022 正式支持 .NET MAUI 開發(fā)

    我們很高興地宣布 Visual Studio 2022 正式支持 .NET MAUI 開發(fā)?,F(xiàn)在,您可以使用 .NET 更快地構(gòu)建跨平臺原生客戶端應(yīng)用程序,并將它們從單個(gè)代碼庫發(fā)布到 Android、iOS、macOS 和 Windows。 此版本還提供了 .NET MAUI SDK 的最新穩(wěn)定性改進(jìn),這是自 2022 年 5 月 正式發(fā)布(GA)發(fā)布以來的第

    2024年02月11日
    瀏覽(20)
  • .net 8 發(fā)布了,試下微軟最近強(qiáng)推的MAUI

    .net 8 發(fā)布了,試下微軟最近強(qiáng)推的MAUI

    先看下實(shí)現(xiàn)的效果: 下面發(fā)下XAML文件: .cs文件: 下一個(gè)示例實(shí)現(xiàn)調(diào)用手機(jī)的藍(lán)牙或者一些設(shè)備。

    2024年02月04日
    瀏覽(21)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包