[Xamarin.Android]如何引用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檔案裡的類別
![]()
相關資料參考網站:
n Binding a Java Library (.jar)
[Xamarin.Android]如何引用JAR檔案 (转帖)的更多相关文章
- Xamarin Android中引用Jar包的方法
新建一个Java Bingdings Library 将Jar包复制,或使用添加已存在的文件,到Jars文件夹中 确认属性中的“生成操作” 如果有类型转换不正确,请修改Transforms文件夹中的相 ...
- [Xamarin.Android] 如何使用Google Map V2 (转帖)
Google Map v1已經在2013年的3月開始停止支援了,目前若要在你的Android手機上使用到Google Map,就必須要使用 到Google Map v2的版本.在Xamarin要使用G ...
- android 如何引用jar包
首先,把jar包放到项目目录app/libs下,然后是项目引用:三个方法 方法一.添加compile 打开app下的build.gradle,在dependencies里面添加 implementat ...
- android 入门-库的生成jar 和引用jar
开发环境 1.eclipse 2.android studio 步骤 1.在eclipse 生成 jar包 2.在android studio 引用 jar包 实现步骤 1.在eclipse 创建一个 ...
- [Xamarin.Android] 儲存資料於Windows Azure (转帖)
在準備討論Xamarin.Android 如何整合GCM與Windows Azure來實作Push Notification之前, 先來了解如何將Xamarin.Android 與Windows Az ...
- [Xamarin.Android]使用Java Bindings Libary專案 Binding Java元件(.jar) 與Metadata.xml、型別對應 (转帖)
使用Xamarin開發Android APP時, 如果已經有原本就用Java寫好的套件(.jar), 就可以利用Xamarin提供的Java Bindings Libary將他變成C#可使用的元件. ...
- (8) Xamarin使用Jar檔
原文 Xamarin使用Jar檔 这个范例是如何在Xamarin.Android中去使用一个我们自行在开发的JAR档案. 主要会执行的步骤如下 在Xamarin建立一个Android Java Bin ...
- Xamarin.Android 调用原生的Jar包
我们有时候会从Android原生开发(Java)转移到Xamarin.Android开发时,需要将过去写好的Android Class Library直接嵌入到Xamarin.Android底下使用, ...
- Android Studio开发入门-引用jar及so文件
作者:王先荣 最近初学安卓开发,因为以前从未用过JAVA,连基本的语法都要从头开始,所以不太顺利.在尝试使用百度语音识别引擎时遇到了如何引用jar及so文件的问题.在GOOGLE加多次尝试之后, ...
随机推荐
- io.fabric8.kubernetes对pv和pvc的增删查改
1.新建maven项目k8stest,pom.xml如下: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns: ...
- 3dsmax导入点云数据
http://blog.sina.com.cn/s/blog_a4f6aad50101ht99.html https://blog.csdn.net/yangziluomu/article/detai ...
- Ubuntu 16.04 无人值守自动更新
https://help.ubuntu.com/lts/serverguide/automatic-updates.html 设置说明 APT::Periodic::Update-Package-Li ...
- [Erlang26]怎么通过beam文件得到所有的record或源代码?
怎么通过beam文件得到所有的record或源代码? 1. 首先必须要在compile里面加上debug_info信息: 1 > c(load,[debug_info]). {ok,load ...
- Hadoop各个组件与端口
组件 Daemon 端口 配置 说明 HDFS DataNode 50010 dfs.datanode.address datanode服务端口,用于数据传输 HDFS DataNode 50075 ...
- bootstrap-table简单使用
开发项目时总想着能不能有一款插件包含分页,查询等常用功能,后来发现了bootstrap-table 直接看代码和效果图 <!DOCTYPE html> <html lang=&quo ...
- 在jquery中怎么使用css类名和id来获取元素?
在jquery中,你可以很容易的使用CSS类名和id类获取元素. 例如: 1.ID:#id $('#idA')——选择id为idA的所有元素,不管元素的标签名如何. $('div#idA')——选择i ...
- JavaScript数组(参考资料)
JavaScript数组的长度和元素类型都是非固定的.因为数组的长度可随时改变,并且其数据在内存中也可以不连续,所以 JavaScript 数组不一定是密集型的,这取决于它的使用方式.1.Array. ...
- iOS错误 - too many open files (error = 24)
碰到这个错误是在用 UIImageView 显示图片的时候.UIImage 用的是 imageNamed 方法.错误原因是打开了太多的文件.应该是太多文件的打开导致了 UIImage 的 cache ...
- kolla-ansible 重新部署 ceph 遇到的问题
问题 TASK [ceph : Fetching Ceph keyrings] ******************************************* fatal: [controll ...