最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

利用android studio生成jar包,制作自己的SDK

2020-01-16 18:58 作者:啵嘰玉桂狗勾  | 我要投稿


開(kāi)展項(xiàng)目合作時(shí),基于模塊化思想,對(duì)方要用到你的程序,而你又不想將源代碼給對(duì)方,通常會(huì)將程序進(jìn)行打包生成jar,并作混淆處理。

1.創(chuàng)建項(xiàng)目

? ? ? ?【File】—【New Module】—【Android Library】,命名,然后編輯代碼。

? ? ? ?新建一個(gè)Class文件,然后添加一個(gè)方法(即后面jar包里要調(diào)用的方法)。

創(chuàng)建類(lèi)測(cè)試:


public class MyJarTest {

? ?public static String testJarString() {

? ? ? ?return "測(cè)試生成的Jar包";

? ?}

}


2.配置build.gradle文件

? ? ? ?AS中進(jìn)行代碼混淆需要在build.gradle文件和proguard-rules.pro文件中進(jìn)行設(shè)置(可以通過(guò)jd-gui工具對(duì)比混淆前后效果):

? ? ? ?你的library(myjarlibrary)庫(kù)下打開(kāi)build.gradle文件,在末尾加上下述代碼。


task makeJar(type: Copy) {

? ? //刪除之前編譯混淆jar包

? ? //delete 'build/outputs/test.jar'

? ? delete 'build/outputs/test.jar'

? ? //jar文件來(lái)源(AS3.0前)

? ? //from('build/intermediates/bundles/release/')

? ? //jar文件來(lái)源(AS3.0后)

? ? from('build/intermediates/packaged-classes/release/')

? ? //生成jar文件路徑(可改)

? ? into('build/outputs/')

? ? //jar文件名

? ? include('classes.jar')

? ? //命名為test.jar

? ? rename('classes.jar', 'test.jar')

}

makeJar.dependsOn(build)


? ? ? ?點(diǎn)擊Sync Now,等Android Studio運(yùn)行完成后,點(diǎn)擊右上角的Gradle按鈕,然后點(diǎn)開(kāi)我們的module(就是之前建的 sdklibrary),你取的什么名字在這就是什么名字,點(diǎn)開(kāi)只有在點(diǎn)開(kāi)other,然后再展開(kāi)的方法里面找到我們的makeJar。

3.運(yùn)行

? ? ? ?【Gradle】—【New Module(myjarlibrary)】—【other】—【make】

? ? ? ?雙擊makeJar按鈕,等到運(yùn)行結(jié)束,就可以看到。build/intermediates/bundles/release/這個(gè)文件夾下面生成了classes.jar文件,并將jar存放到指定路徑(如build/outputs/test.jar)。

? ? ? ?注:新版AS:intermediates/packaged-classes 替換intermediates/bundles了。

? ? ? ?將jar包導(dǎo)入你想要用的工程里,然后調(diào)用相應(yīng)的方法就好了。

4.測(cè)試


將test.Jar包導(dǎo)入依賴(lài)后編寫(xiě)代碼測(cè)試。

public class MainActivity extends AppCompatActivity {

? ? private TextView tvTxt;

? ? @Override

? ? protected void onCreate(Bundle savedInstanceState) {

? ? ? ? super.onCreate(savedInstanceState);

? ? ? ? setContentView(R.layout.activity_main);

? ? ? ? tvTxt = findViewById(R.id.tv_main_txt);

? ? ? ? tvTxt.setText(MyJarTest.testJarString());

? ? }

}


效果:

————————————————

利用android studio生成jar包,制作自己的SDK的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
姚安县| 宁化县| 岢岚县| 克东县| 砀山县| 铁岭县| 东辽县| 额济纳旗| 荆门市| 庐江县| 依安县| 罗甸县| 林周县| 井研县| 十堰市| 东辽县| 名山县| 中牟县| 卢湾区| 崇信县| 开江县| 来安县| 临西县| 澄城县| 封丘县| 高邑县| 成都市| 双辽市| 连江县| 五家渠市| 佛冈县| 镶黄旗| 象州县| 昌黎县| 宜昌市| 廊坊市| 茌平县| 通渭县| 吉林省| 卫辉市| 东山县|