前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >java怎么运行_怎样启动JAVA?「建议收藏」

java怎么运行_怎样启动JAVA?「建议收藏」

作者头像
全栈程序员站长
发布2022-09-08 11:02:40
2.8K0
发布2022-09-08 11:02:40
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

展开全部

在Android中启动Java程序其实有很多种方式,现总结如下

一、在Android应用程序中e69da5e887aa62616964757a686964616f31333363373732发送Intent启动Android应用程序

这个方式最简单,最常用。在此不在累述。关于Intent的更多内容请阅读《Intent技术简介》

二、在shell控制台通过am命令发送Intent来启动Android应用程序

在Android的shell控制台通过am命令发送Intent来启动Android应用程序

关于此的详细内容请参考《Android命令am详解》

三、在shell控制台直接通过davlikvm命令启动一个JAVA程序。

该方式有个天生的缺点,即在其中,很多Android的JNI无法调用。因为Android的很多JNI其实是需要手动注册的。

关于请参考《基本Dalvik VM调用》

四、在shell控制台直接通过运行app_process程序启动一个JAVA程序

在app_process程序中,会对Android的JNI进行手动注册的,能很好的使用Android的API,因此通过运行app_process程序启动一个JAVA程序,是一个比较完美的方式。app_process程序是一个C程序,源码位于frameworks\base\cmds\app_process。

关于使用请参考《Android命令am详解》以及shell脚本frameworks\base\cmds\am\am和frameworks\base\cmds\pm\pm

am脚本文件如下:

pm脚本文件如下:

CLASSPATH指定了程序的位置,com.android.commands.pm.Pm则说明了程序的入口为com.android.commands.pm.Pm,即入口函数main()所在的类,”@”就是传递给main()函数的参数,只是这里”@”本身又是个shell传入的参数而已

总结:需要注意的是CLASSPATH中的文件必须是dalvik文件格式的,关于此的转换请参考《基本Dalvik VM调用》当然CLASSPATH中的文件可以是apk文件,只是apk中至少应该有个拥有main()入口函数的类。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/156490.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档