平常都是用java写activity之类的东西,都看不到程序的入口main,android 系统是dalvik虚拟机,只是把java class 合成了一个文件,把字节码转成了dalvik运行的东西,所以dalvik可以运行没有四个组件的代码吧,今天 试了一个 可以
下面来说下:
1.先来个java main
package com.aspire.test.dex;
import android.os.Build;
import android.os.Process;
import android.util.Log;
public class Main {
private static final String TAG = "Main";
/**
* @param args
*/
public static void main(String[] args) {
do {
Log.d(TAG, "start main");
final String version = Build.VERSION.SDK;
Log.d(TAG, "the product sdk version:" + version);
Log.d(TAG, "time:" + System.currentTimeMillis());
Log.d(TAG, "pid:" + Process.myPid());
try {
Thread.sleep(500);
} catch (InterruptedException e) {
e.printStackTrace();
}
} while (true);
}
}
建立的是java工程哦 ,把sdk下的android.jar 引入进来
2.编译java到class
在eclipse bin 下面有编译好的class
3.把class 转成dex
用cmd 切换到bin目录下
工具是$sdk\platform-tools\dx.bat
这里输入命令de --dex --output={输出dex到哪个文件} class 所在编译的目录 这是bin。
转化完成就有一个classes.dex文件
把dex文件像jar一样打包
4.写linux shell 脚本
export LD_LIBRARY_PATH=/data/local/tmp/:$LD_LIBRARY_PATH
export CLASSPATH=/data/local/tmp/testdex.jar
exec app_process . com.aspire.test.dex.Main
5.把
testdex.jar 脚本文件push 到手机的/data/local/tmp目录里
最后执行 ./脚本名 没错误 就运行成功了
下面资源我用ant build的
分享到:
相关推荐
注意,如果你的项目是一个Android项目,运行Java类的`main()`函数不会启动Android模拟器或设备,而是在控制台输出结果。这种方法适合于单元测试、命令行工具或者独立的Java逻辑。 总结来说,要在Android Studio中...
JavaCV需要Android的NDK(Native Development Kit)来编译和运行C++代码。在`build.gradle`(Module: app)文件中,添加以下代码来指定NDK版本: ```groovy android { defaultConfig { externalNativeBuild { ...
在Android开发中,有时我们需要利用C++(通过NDK)来编写高性能的代码,并与Java层进行交互。本文将深入探讨如何在C++线程中调用Java方法,以实现跨语言的通信。我们将基于Android Studio 3.0和Gradle 3.2.0的环境来...
同时,WebView还提供了Java代码与JavaScript交互的能力,使得我们可以利用JavaScript的灵活性和Android原生功能的强大结合,创建出丰富的混合应用。本文将详细介绍如何在Android中使用WebView实现Java程序与JS脚本的...
Java以其“一次编写,到处运行”的理念闻名,这意味着用Java编写的应用程序可以在任何安装有Java虚拟机(JVM)的设备上运行。 2. Java的诞生和发展历史 Java的故事始于1982年,一个名为Sun Microsystems的公司在...
我们需要移除`android.jar`,因为它不是运行Java应用所必需的。点击"Remove"按钮,去掉"Bootstrap Entries"下的`android.jar`。 6. **添加JRE**:为了能够运行Java程序,我们需要添加JRE系统库。点击"Advanced",...
Android Studio无法执行Java类的main方法问题及解决方法 Android Studio作为一款强大的集成开发环境(IDE),提供了许多功能强大且灵活的开发工具,但是有时候也会遇到一些问题,例如无法执行Java类的main方法。...
Android JNI(Java Native Interface)是Android系统提供的一种机制,它允许Java代码调用C/C++原生代码,同时也允许C/C++代码调用Java的方法。JNI在开发高性能、低级硬件交互、使用现有C库或者优化性能的关键部分时...
【安卓程序——植物大战僵尸游戏】 ...(4)本程序经过测试,可以保证在安卓设备上正常运行,另外附带了一份详细的运行教程,如果学习者在运行程序时遇到任何问题,可以随时联系博主进行咨询和解决。
例如,您可以在Java代码中找到XML布局中的特定视图,监听其事件,或者在运行时动态地修改其属性。 总的来说,Android开发中布局的设计和实现是关键的一环。理解如何在Java代码中编写布局和如何引入XML布局可以帮助...
在Android开发中,`main.c` 文件通常不作为标准的一部分,因为Android主要使用Java和Kotlin作为其应用程序的主要编程语言。然而,如果你在一个名为 `main.c` 的C语言源文件中工作,这可能是为了利用Android的本地...
8. **运行与调试**:完成代码编写后,可以在Android模拟器或连接的设备上运行应用进行测试。Android Studio提供了强大的调试工具,可以帮助开发者定位并解决问题。 总之,"Android计算器(java)"项目是一个基础的...
这里,`javac`将源代码编译到`bin`目录,`java`命令则加载并运行`Main`类的`main`方法。 Java语言有着广泛的应用,包括桌面应用、企业级应用、Web应用、移动应用(尤其是Android)、大数据处理、云计算等。通过学习...
在Android平台上,由于Android应用程序主要是由Java或Kotlin编写,因此Cocos2d-x需要将C++代码与Java代码结合起来,以确保游戏能在Android设备上正常运行。 **Cocos2dx Android编译流程** 1. **设置环境**:首先,...
- **简单的 Java 程序**: 一个简单的 Java 程序通常包括基本的结构元素,如类定义、主函数(`main` 方法)、变量声明和控制流程语句。 - **变量与数据类型**: Java 支持多种数据类型,包括整数类型 (`int`, `short`,...
总之,`Android-JavaAndroid中文转拼音稳如狗`项目为Android开发者提供了一种可靠的中文转拼音解决方案,利用Java和第三方库`pinyin4j`,确保了在处理中文字符时的稳定性和效率。通过深入理解和运用这些技术,我们...
这个过程涉及到多个技术领域,包括Java后端开发、网络通信协议以及Android应用编程。下面将详细阐述如何使用Java搭建本地服务器,并让Android客户端进行访问。 首先,Java作为后端语言,可以通过多种框架来搭建...