原文 Xamarin使用Jar檔

这个范例是如何在Xamarin.Android中去使用一个我们自行在开发的JAR档案. 主要会执行的步骤如下

  1. 在Xamarin建立一个Android Java Bindings Library 项目
  2. 加入自行开发的JAR档案到这个项目里面
  3. 在Xamarin.Android项目中参考Android Java Bindings Library 项目
1. 写一个Java 程序并且把他包装成JAR档案

1.1 撰写以下程序代码并且储存扩展名为java的档案

package com.xamarin.testbinding;

public class test{

public String method(){

return "Hello jar";

}

}

1.2 在终端机下用Javac指令来编译 test.java
编译完成会产生出一个test.class档案

1.3 建立一个Manifest.mf档案.
手动建立一个扩展名为mf的Manifest.mf档案.接着开启这个档案编辑它
在档案中的第一行宣告这个JAR档的进入点是由那只程序(class档案)来进入
这边我们输入 Main-Class: com.xamarin.testbinding.test

1.4 将test.Class档案复制到com.xamarin.testbinding 文件夹下 
在目前所在的目录下建立底下的文件夹结构,com>xamarin>testbinding 
然后将test.class拷贝到testbinding文件夹下

1.5 使用JAR指令把test.class打包成JAR档案 
在终端机接口下执行
jar cvfm testJ.jar manifest.mf ./com/xamarin/testbinding/test.class 
把test.class打包成JAR档案
2. 新建Android Java Bindings Library
2.1 建立Android Java Bindings Library档案 
New >> Android >> Android Java Bindings Library

2.2 把JAR档案加入到目前项目

2.2.1在项目的Jars文件夹按下鼠标右键>>添加>>添加档案
把JAR档加入这个项目

2.2.2 在被加入的JAR文件的属性窗口里面的建置动作选择 [EmbeddedJar]

2.3 上述动作都完成后编译这个项目
3. 新增Xamarin.Android专案
3.1 建立Android 项目 New >> Android >> Android Application
3.2 把Android Java Bindings Library加入参考

3.3 接着在你的Android项目中using Com.Xamarin.TestBinding名称空间
在参照名称空间时要特别注意,Xamarin会自动把你的名称空间的每一个字母的第一个英文转换成大写. 
也就是原本我们在JAR档案里面宣告的 package com.xamarin.testbinding; 
在Xamarin.Android要使用这个名称空间时,我们必须要输入成Com.Xamarin.Testbinding 
而类别名称也会变成第一个字母为大写.

3.4 此时就可以在Xamarin.Android项目中引用JAR档案里的类别

 

(8) Xamarin使用Jar檔的更多相关文章

  1. [Xamarin.Android]如何引用JAR檔案 (转帖)

    這個範例是如何在Xamarin.Android中去使用一個我們自行在開發的JAR檔案. 主要會執行的步驟如下 1. 在Xamarin建立一個Android Java Bindings Library ...

  2. vs2017 xamarin导入jar,SO文件的问题

    最近要弄用vs弄个安卓的系统,因为要使用硬件,所以要引进jar,SO文件 导入jar文件很顺利,具体步骤我也是在网上找的这里给个链接 http://www.2cto.com/kf/201604/502 ...

  3. Xamarin学习资源收集

    推荐入门视频 跨行動平台App開發概觀- 使用Xamarin+Visual Studio https://www.youtube.com/watch?v=ELuFTTn1gS4 中文产品介绍http: ...

  4. C#使用Xamarin开发Android应用程序 -- 系列文章

    Xamarin开发Android应用程序 利用Xamaria构建Android应用-公交发车信息屏 Xamarin版的C# SVG路径解析器 C#使用Xamarin开发可移植移动应用(1.入门与Xam ...

  5. [Xamarin.Android]使用Java Bindings Libary專案 Binding Java元件(.jar) 與Metadata.xml、型別對應 (转帖)

    使用Xamarin開發Android APP時, 如果已經有原本就用Java寫好的套件(.jar), 就可以利用Xamarin提供的Java Bindings Libary將他變成C#可使用的元件. ...

  6. Xamarin.Forms学习系列之Android集成极光推送

    一般App都会有消息推送的功能,如果是原生安卓或者IOS集成消息推送很容易,各大推送平台都有相关的Sample,但是关于Xamarin.Forms的消息推送集成的资料非常少,下面就说下Xamarin. ...

  7. JavaFX結合 JDBC, Servlet, Swing, Google Map及動態產生比例圖 (3):部署設定及應用 (转帖)

    說明:這一篇主要是說明如何將程式部署到Application Server,以及程式如何運作,產生的檔案置於何處,以及如何以瀏覽器呈現(Applet),或是當成桌面應用程式,或是 桌面Applet,這 ...

  8. JavaFX結合 JDBC, Servlet, Swing, Google Map及動態產生比例圖 (2):JavaFX建立及程式碼說明 (转帖)

    說明:就如同標題一樣,前端會用到JavaFX.Swing.Java Web Start.Google Map 的技術, 後端就是JDBC.Servlet的技術,以及我們會簽署認證jar檔案,這樣才可存 ...

  9. JavaFX結合 JDBC, Servlet, Swing, Google Map及動態產生比例圖 (1):NetBeans 寫 Servlet (转帖)

    JavaFX結合 JDBC, Servlet, Swing, Google Map及動態產生比例圖 (1):NetBeans 寫 Servlet 功能:這支程式的主要功能是將 javafx 與 swi ...

随机推荐

  1. JSP(一)

    开宗明义:JSP本质上就是一个Servlet scriplet JSP 变量和函数的声明 局部变量 <% int a = 3;> 全局变量和函数 <%! int a = 3;> ...

  2. lua学习笔记(2)-常用调用

    assert(loadstring("math.max(7,8,9)"))dofile("scripts/xxx.lua")math.floor()math.r ...

  3. WIFI无线adb调试android

    有个需求需要支持android插上键盘,鼠标等外设,但是这样就不能使用microusb口进行adb调试了. 研究了一番,发现可以利用wifi进行adb无线调试(adb应该本身已经支持无线调试). WI ...

  4. Oracle EBS-SQL (PO-1):检查供货比例异常.sql

    select distinct msr.sourcing_rule_name                     名称 , msi.description                      ...

  5. 论山寨手机与Android 【15】结束语

    去年11月,与人讨论山寨版Android智能手机的前景,最初觉得这个问题很容易回答.但是三言两语之后,不仅听者茫然,而且言者自己也意识到条理紊乱,说服力不强.于是决定写几篇文章,把这个问题展开说说.所 ...

  6. SPI模式下MCU对SD卡的控制及操作命令

    一.前言 SD 卡有两个可选的通讯协议:SD 模式和 SPI模式 SD 模式是SD 卡标准的读写方式,但是在选用SD 模式时,往往需要选择带有SD 卡控制器接口的 MCU,或者必须加入额外的SD卡控制 ...

  7. Invalidate(TRUE)与Invalidate(FALSE)区别(前者会发送WM_ERASEBKGND消息全部刷新,然后使用WM_PAINT消息绘制,而后者只发送WM_PAINT消息)

    使用Invalidate(TRUE)函数时,它会向消息队列中添加了WM_ERASEBKGND和WM_PAINT两个消息. 使用Invalidate(FALSE)函数时,它只会向消息队列中添加了WM_P ...

  8. C#dll版本号默认生成规则

    原文:C#dll版本号默认生成规则 1.版本号自动生成方法 只需把 AssemblyInfo.cs文件中的[assembly: AssemblyVersion("1.0.0.0") ...

  9. 修改EBS R12 URL连接端口

    (TEST环境8002端口)1.停止所有应用服务2.修改<SID>_<server>.xml配置文件(如test_vis.xml)cd $APPL_TOP/admin (如cd ...

  10. TCP/IP详解之:ICMP协议

    ICMP协议: ICMP是IP层的一个组成部分,ICMP报文是在IP数据报内部被传输的,用于在IP主机.路由器之间传递控制消息.控制消息是指网络不通.主机是否可达.路由是否可用等网络本身的消息.这些控 ...