反编译Apk得到Java源代码

这段时间在学Android应用开发,在想既然是用Java开发的应该很好反编译从而得到源代码吧,google了一下,确实很简单,以下是我的实践过程。 在此郑重声明,贴出来的目的不是为了去破解人家的软件,完全是一种学习的态度,不过好像通过这种方式也可以去汉化一些外国软件。 一、反编译Apk得到Java源代码 首先要下载两个工具:dex2jar和JD-GUI 前者是将apk中的classes.dex转化

Android设置全屏的三种方式

在开发的过程中,我们有时候需要让我们应用程序全屏或者是让某个页面全屏,在今天的android小技巧中我们来讲讲如何设置我们的应用程序 全屏: 通常我们有三种方式: 1.在onCreate方法中添加代码 。 2.AndroidMainfest.xml里面使用android自带的theme来设置 3.style.xml中我们使用自定义的theme来设置。   接下来我们一一给大家解释: 1.

JNI原理研究

这个部分之所以放在我的博客中,因为比较难,自己的功力不见得很够,所以写起来有点天马行空。 如果其他朋友觉得有用就给个赞吧。 1,JNI调用中的JNIEnv是什么? 要回答这个问题,我们必须研究源码 在jni.cpp 中有JNIEnv* dvmCreateJNIEnv(Thread* self)函数, 这个函数的作用是什么呢?创建JNIEnv,我们来看函数实现 JNIEnvExt* newEnv =

Android线程的创建与销毁

在Android开发中经常会使用到线程,一想到线程,很多同学就立即使用 new Thread(){…}.start(); 这样的方式。这样如果在一个Activity中多次调用上面的代码,那么将创建多个匿名线程,程序运行的越久可能会越来越慢。因此,需要一个Handler来启动一个线程,以及删除一个线程。 保证线程不会重复的创建。 1、创建Handler的一般方式 一般会使用 Handler ha

初探dalvik线程机制

先前有朋友问线程在java和android中有什么区别,其实这个说法是不确切的,首先java是语音层次的,而android是OS层次的,这个问题应该这样问题,android中的线程是如何实现的。本人花了一点时间研究了dalvik是如何创建线程的。 1,先前我们谈到了如何在JNI中创建线程。我们曾经提到两个函数 static jint AttachCurrentThread(JavaVM* vm,

时间DateTime类型转换为字符串String格式方法汇总

编程的过程中,通常需要将日期型数据按照一定的格式输出,当然,输出结果肯定是字符串。为此,我们需要使用 System.DateTime 类的 ToString() 方法,并为其指定格式字符串。   MSDN 中,System.Globalization.DateTimeFormatInfo 类的概述里对模式字符串有非常详细的说明,因此,这里我只对常用的一些格式进行说明,首先请看下表: d 月中的某一

追MM与JAVA的23种设计模式

追MM与JAVA的23种设计模式 : 创建型模型 1、FACTORY —— 追MM少不了请吃饭了,麦当劳的鸡翅和肯德基的鸡翅都是MM爱吃的东西,虽然口味有所不同,但不管你带MM去麦当劳或肯德基,只管向服务员说“来四个鸡翅”就行了。麦当劳和肯德基就是生产鸡翅的Factory 工厂模式:客户类和工厂类分开。消费者任何时候需要某种产品,只需向工厂请求即可。消费者无须修改就可以接纳新产品。缺点是当产品修改