一、使用Android Studio进行jar打包

1、使用Android建立一个工程,贴主随便建了一个Hello的工程,也就是Android的基本demo。

2、在刚刚的工程上建立一个Jar Library工程。操作路径如下图所示,记得选择的是Java Library

3、建立HelloWorld类,并加入测试代码(这里循环print了10次测试语句)

package com.example;public class HelloWorld {    public static void main(String[] args) {        for (int i = 1; i < 10; i++) {            System.out.println("this is the test index" + i);        }    }}

 4、修改library下的gradle,用于打包jar,新手一般不是道该修改哪个gradle,这里也截图说明下。

5、gradle在原来基础上增加makeJar

apply plugin: 'java'dependencies {    compile fileTree(dir: 'libs', include: ['*.jar'])}task makeJar(type: Copy) {    //删除存在的    delete 'build/libs/mysdk.jar'    //设置拷贝的文件    from('build/intermediates/bundles/release/')    //打进jar包后的文件目录    into('build/libs/')    //将classes.jar放入build/libs/目录下    //include ,exclude参数来设置过滤    //(我们只关心classes.jar这个文件)    include('classes.jar')    //重命名    rename('classes.jar', 'mysdk.jar')}makeJar.dependsOn(build)

6、运行gradle脚本得到jar包。

7、运行结束后,在测试的module下build->libs下就会有test.jar生成

二、在Android工程上使用jar

1、把上一小结中得到的jar包拷贝到HelloWorld真机工程下libs目录下

2、右键刚刚导入的jar包,选择Add As Library

3、此时工程gradle下多了一行

4、在activity中加入代码

package com.example.helloworld;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import com.example.HelloWorld;public class HelloActivity extends AppCompatActivity {    private static String TAG = "TEST_TAG";    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_hello);        String[] tmp = new String[1];        HelloWorld.main(tmp);    }}

 5、运行代码即可看到LogCat中打印了10次测试语句了。

三、打包能在Android真机上直接运行的jar

1、使用第一步打包好的jar,并拷贝到\Android_SDK\build-tools\26.0.1下

2、执行dx --dex --output=classes.dex test.jar

classes.dex为打包后能在android上运行的dex文件

3、把生成的classes.dex与test.jar放到一个目录中

4、使用rar工具把test.jar打开,并把classes.dex放入test.jar的根目录中,再重新用rar打包

5、把得到的test.jar push到手机/data/local/tmp/test.jar

6、依次运行,最好在su情况下获取

chmod 0755 /data/local/tmp/test.jarexport CLASSPATH=/data/local/tmp/test.jar
7、运行jar
app_process /data/local/tmp com.example.HelloWorld

com.example.Helloworld为刚才jar的包名

8、执行结果也会在命令行上打印10个测试语句

 





更多相关文章

  1. 如何把Eclipse工程导入到Android(安卓)Studio
  2. android studio gradle 多版本多apk打包(打包系列教程之五)
  3. Android(安卓)高手进阶教程(十四)之----Android(安卓)Location的
  4. Android单元测试之Robolectric
  5. Android(安卓)Permission
  6. Android(安卓)Studio真机测试时生成的程序出现闪退
  7. Android(安卓)5.0 技术新趋势
  8. Android搭建opencv环境(超详细)
  9. 在Eclipse中导入新浪微博SDK

随机推荐

  1. Android(安卓)声明自身为应用市场
  2. [1] Android主要源代码组成
  3. Android SDK 国内镜像
  4. Android P窗口机制之Window加载流程
  5. shape 的使用xml
  6. asdsad
  7. 从零开始学习Android开发
  8. [Android(安卓)API学习]Data Storage胡乱
  9. 怎么让Linearlayout里面的textview垂直居
  10. 《疯狂Android讲义》第二版目录