這個範例是如何在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. 【转】WIFI基本知识整理

    WIFI基本知识整理 这里对wifi的802.11协议中比较常见的知识做一个基本的总结和整理,便于后续的学习.因为无线网络中涉及术语很多,并且许多协议都是用英文描述,所以有些地方翻译出来会有歧义,这种 ...

  2. window.location 对象

    http://www.home.com:8080/windows/location/page.html?ver=1.0&id=timlq#love 1, window.location.hre ...

  3. polymer-developer guide-feature overview

    <dom-module id='proto-element'> <template> <div>{{greeting}}</div> </temp ...

  4. Cacti部署

    1>监控概述   通常运维人员在一个企业当中所需要管理一台或者多台服务器,或者甚至更多,特别是BAT公司或者门户级别的公司,一个人管理的服务器可能上百甚至上千台                  ...

  5. mysql导入数据load data infile用法(转)

    们常常导入数据!mysql有一个高效导入方法,那就是load data infile 下面来看案例说明 基本语法: load data  [low_priority] [local] infile ' ...

  6. Java Been, EJB, POJO 之间的区别

    Java Bean 是可复用的组件,对Java Bean并没有严格的规范,理论上讲,任何一个Java类都可以是一个Bean.但通常情况下,由于Java Bean是被容器所创建(如Tomcat)的,所以 ...

  7. WebLogic 两处任意文件上传漏洞动态分析(CVE-2018-2894)

    0x01 前言 CNCERT前几天发公告称发现Oracle公司出品的基于JavaEE结构的中间件WebLogic产品存在一个远程上传漏洞,并得到了厂商的确认,危害程度评分高达9.8分.鉴于厂商已进行了 ...

  8. EF6 使用SQLite Code First

    SQLite是一款轻型关系型数据库,做一个小网站,用来替代sql server或者access数据库应该会是一个不错的选择. ASP.NET Entity Framework 6是微软平台的著名ORM ...

  9. SparkSQL大数据实战:揭开Join的神秘面纱

    本文来自 网易云社区 . Join操作是数据库和大数据计算中的高级特性,大多数场景都需要进行复杂的Join操作,本文从原理层面介绍了SparkSQL支持的常见Join算法及其适用场景. Join背景介 ...

  10. java学习笔记—c3p0连接池与元数据分析(42)

    第一步:导入c3p0包 第二步:在classpath目录下,创建一个c3p0-config.xml <?xml version="1.0" encoding="UT ...