這個範例是如何在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檔案裡的類別

相關資料參考網站:

Binding a Java Library (.jar)

http://docs.xamarin.com/guides/android/advanced_topics/java_integration_overview/binding_a_java_library_(.jar)

[Xamarin.Android]如何引用JAR檔案 (转帖)的更多相关文章

  1. Xamarin Android中引用Jar包的方法

    新建一个Java Bingdings Library 将Jar包复制,或使用添加已存在的文件,到Jars文件夹中 确认属性中的“生成操作” 如果有类型转换不正确,请修改Transforms文件夹中的相 ...

  2. [Xamarin.Android] 如何使用Google Map V2 (转帖)

    Google Map v1已經在2013年的3月開始停止支援了,目前若要在你的Android手機上使用到Google Map,就必須要使用 到Google Map v2的版本.在Xamarin要使用G ...

  3. android 如何引用jar包

    首先,把jar包放到项目目录app/libs下,然后是项目引用:三个方法 方法一.添加compile 打开app下的build.gradle,在dependencies里面添加 implementat ...

  4. android 入门-库的生成jar 和引用jar

    开发环境 1.eclipse 2.android studio 步骤 1.在eclipse 生成 jar包 2.在android studio 引用 jar包 实现步骤 1.在eclipse 创建一个 ...

  5. [Xamarin.Android] 儲存資料於Windows Azure (转帖)

    在準備討論Xamarin.Android 如何整合GCM與Windows Azure來實作Push Notification之前, 先來了解如何將Xamarin.Android 與Windows Az ...

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

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

  7. (8) Xamarin使用Jar檔

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

  8. Xamarin.Android 调用原生的Jar包

    我们有时候会从Android原生开发(Java)转移到Xamarin.Android开发时,需要将过去写好的Android Class Library直接嵌入到Xamarin.Android底下使用, ...

  9. Android Studio开发入门-引用jar及so文件

    作者:王先荣    最近初学安卓开发,因为以前从未用过JAVA,连基本的语法都要从头开始,所以不太顺利.在尝试使用百度语音识别引擎时遇到了如何引用jar及so文件的问题.在GOOGLE加多次尝试之后, ...

随机推荐

  1. 从Objective-C到Swift 单例模式

    在Objective-C中经常会用到单例模式.最常见的就是: [UIApplication sharedApplication].delegate 这里的sharedApplication就是一个返回 ...

  2. 命令行传递参数并排序 AS实现加法

    题目:从命令行输入参数并进行排序 1.实验准备 Integer提供了能在 int 类型和 String 类型之间互相转换的方法,还提供了处理 int 类型时非常有用的其他一些常量和方法. static ...

  3. 使用VPD解决EBS中信息屏蔽问题

    本文描述的是2005年在一个项目中采用Oracle VPD技术解决同一个OU下按照不同办事处屏蔽销售订单的解决方案. VPD技术提供了数据库对象(表,同义词,视图)行级别访问的控制.关于VPD更多的信 ...

  4. .net 开发者尝试Apache Spark™

    本文编译自一篇msdn magazine的文章,原文标题和链接为: Test Run - Introduction to Spark for .NET Developers https://msdn. ...

  5. rpm包的安装,查询,卸载,升级,校验,数据库重建,验证数据包

    rpm命名: 包:组成部分 主包:bind-9.7.1-1.i586.e15.rpm 子包:bind-lib-9.7.1-1.i586.e15.rpm bind-utils-9.7.1-1.i586. ...

  6. CSS3 线性渐变linear-gradient

    CSS3 Gradient 分为 linear-gradient(线性渐变)和 radial-gradient(径 向渐变).为了更好的应用 CSS3 Gradient,需要先了解一下目前的几种现代浏 ...

  7. 记在WEBAPI中AutoMapper的初使用方法

    很早就听说AutoMapper了.这些天一直在写api接口,发现之前的类型转换有点问题,就想到了用AutoMapper.用作DTO转换工具.  废话不多说,直接开些代码 首先 在Vs中找到 工具--- ...

  8. Kafka与.net core(二)zookeeper

    1.zookeeper简单介绍 1.1作用 zookeeper的作用是存储kafka的服务器信息,topic信息,和cunsumer信息.如下图: 而zookeeper是个什么东西呢?简单来说就是一个 ...

  9. 【cocos2d-x 手游研发小技巧(3)Android界面分辨率适配方案】

    先感叹一下吧~~android的各种分辨率各种适配虐我千百遍,每次新项目我依旧待它如初恋···· 每家公司都有自己项目工程适配的方案,这种东西就是没有最好,只有最适合!!! 这次新项目专项针对andr ...

  10. 中山纪念中学培训DAY1

    哇啊啊啊啊啊啊$……$ 并不像说环境怎么样. $Day1$模拟赛 稳重一点选了提高$B$ 然后$5min$后: $t1$装压$DP$最短路 $t2$裸地贪心 $t3……$哇$t3$怎么做啊啊啊啊. $ ...