Topwo博客
首页
博客
项目
shell查找符合条件的文件并删除
其他
2021-09-26
找到根目录下所有的后缀名为test的文件并把查找结果当做参数传给rm -rf命令进行删除: 1、`find . -name '*.test' | xargs rm -rf` 2、`find . -name '*.test' -exec rm -rf {} \;` 3、`rm -rf $(find . -name '*.test')` 如果想指定递归深度,可以这样: 1、`find . -maxdepth 3 -name '*.test' | xargs rm -rf` 2、`find . -maxdepth 3 -name '*.test' -exec rm -rf {} \;` 3、`rm -rf $(find . -maxdepth 3 -name '*.test')` 这样只会查找三层目录中符合条件的文件并删除掉!
阅读原文>>
Unable to merge dex问题解决记录
Android
2021-09-26
### 一、在Android Studio中 双击(Run with –stacktrace)找到是哪个class文件冲突,再通过下面的脚本找到对应的jar包。 ### 二、在Eclipse中 直接通过下面这个shell脚本找出冲突的class。 #### 附脚本: ```shell #!/bin/sh if [[ $# -eq 0 ]]; then echo "用法1:sh find_class.sh [jar包目录]\n用法2:sh find_class.sh [jar包目录] [要搜索的class]"
阅读原文>>
查看apk包的签名md5、sha1
Android
2021-09-26
### 方法一: ```shell keytool -list -printcert -jarfile android.apk ``` ### 方法二: ```shell jar tf android.apk |findstr RSA jar xf android.apk META-INF/CERT.RSA keytool -printcert -file META-INF/CERT.RSA ```
阅读原文>>
解决使用dx工具将class格式的jar包转成dex格式的二进制jar包时可能遇到的问题
Android
2021-09-26
### 前言 将较大的jar包转成dex格式的jar包过程中可能遇到的问题以及对应的解决办法。 ### 问题 & 解决 #### 问题1:OutOfMemoryError错误 在这里,产生java.lang.OutOfMemoryError这个错误的原因是因为分配给dx工具的JVM内存过小,可以通过增加jvm的heap内存大小来解决。 #### 具体解决办法: 修改dx.bat文件,将原来的1G的heap内存改成更大的值,本文的做法是将其改成4G。 #### 问题2: Uncaught translation error: com.android.dx.cf.code.SimException: invalid opcode ba (invokedynamic requires --min-sdk-version >= 26) 需要设置支持的最小sdk版本 #### 具体解决办法:
阅读原文>>
armeabi与armeabi-v7a的区别,绝对干货!
Android
2021-09-26
### 1、手机cpu架构。 讲到armeabi就不得不讲手机cpu了。电脑有电脑的cpu,手机也有手机的cpu。cpu有厂商属性,也有架构属性,架构的话自己简单地理解就是它的内部模块的组成结构。 其中arm架构的手机cpu占市场的大部分,这也是今天的重点。但arm架构的发展历史悠久,也有很多不同的版本。 ### 2、前面讲了cpu架构,为下面的讲述做了一个技术背景的铺垫。 我们在开发Android项目的时候,比如使用高德地图导航或者3d地图的时候就会使用到.so库文件,它们保存在armeabi和armeabi-v7a或arm64-v8a等目录下,这有什么作用呢? 其实这是给app运行时读取的几个目录,但会根据手机cpu架构类型只从其中一个文件夹读取,有点类似values和values-21的作用,但是与它们又有点不同。
阅读原文>>
从C/C++程序调用Java代码
Java
2021-09-26
JNI允许您从本机代码内调用 Java 类方法。 要做到这一点,通常必须使用 Invocation API 在本机代码内创建和初始化一个 JVM。 下列是您可能决定从 C/C++ 代码调用Java 代码的典型情况: 1. 希望实现的这部分代码是平台无关的,它将用于跨多种平台使用的功能。 2. 需要在本机应用程序中访问用 Java 语言编写的代码或代码库。 3. 希望从本机代码利用标准 Java 类库。 从C/C++ 程序调用 Java 代码的四个步骤: #### 1.编写 Java 代码。
阅读原文>>
java JNI编程技巧——JAVA调用c/c++(4)
Java
2021-09-26
### 步骤 5:创建共享库文件 接下来,我们创建包含本机代码的共享库文件。 大多数 C 和 C++ 编译器除了可以创建机器代码可执行文件以外,也可以创建共享库文件。 用来创建共享库文件的命令取决于您使用的编译器。 下面是在 Windows执行的命令。 #### Windows: 使用visual studio commandprompt工具cl.exe ```shell cl -I"C:\Program Files\Java\jdk1.6.0_10\include" -I"C:\Program Files\Java\jdk1.6.0_10\include\win32" -LD test_JNI_javaCallc_test.c -Fe test_JNI_javaCallc_test.dll ```
阅读原文>>
java JNI编程技巧——JAVA调用c/c++(3)
Java
2021-09-26
### 步骤 4:编写 C/C++ 代码 当谈到编写 C/C++ 函数实现时,有一点需要牢记:说明必须和 JNI_javaCallc_test.h 的函数声明完全一样。 我们将研究用于 C 实现和 C++ 实现的完整代码,然后讨论两者之间的差异。 C函数实现 以下是 JNI_javaCallc_test.c,它是用 C 编写的实现: ```c #include <jni.h>
阅读原文>>
java JNI编程技巧——JAVA调用c/c++(2)
Java
2021-09-26
### 步骤 2:编译 Java 代码 接下来,我们需要将 Java 代码编译成字节码。 完成这一步的方法之一是使用随SDK一起提供的Java编译器javac。 用来将 Java 代码编译成字节码的命令是: ```shell cd test javac JNI_javaCallc_test.java ``` 如果是在eclipse环境下编写的以上代码,文件保存时会自动在工程目录的bin下生成以上java文件 ### 步骤 3:创建 C/C++ 头文件
阅读原文>>
java JNI编程技巧——JAVA调用c/c++(1)
Java
2021-09-26
### 步骤 1:编写 Java 代码 我们从编写 Java 源代码文件开始,它将声明本机方法(或方法),装入包含本机代码的共享库,然后实际调用本机方法。 这里是名为JNI_javaCallc_test: 直接使用文本编辑器或在ecilpos中建立工程敲入以下代码: ```java package test; public class JNI_javaCallc_test { //c/c++本地方法
阅读原文>>
首页
上一页
30
下一页
尾页
文章推荐
shell查找符合条件的文件并删除
2021-09-26
Unable to merge dex问题解决记录
2021-09-26
查看apk包的签名md5、sha1
2021-09-26
解决使用dx工具将class格式的jar包转成dex格式的二进制jar包时可能遇到的问题
2021-09-26
armeabi与armeabi-v7a的区别,绝对干货!
2021-09-26