如何在Android中启动JAVA程序

 我来答
神秘侦探77
推荐于2016-03-04 · 百度知道日报特约作者。
神秘侦探77
采纳数:1756 获赞数:6581

向TA提问 私信TA
展开全部
  •   回答:共有一下四种方法

  •   方法一、在Android应用程序中发送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

匿名用户
2015-03-28
展开全部
在Android中启动JAVA程序其实有很多种方式,现总结如下
  一、在Android应用程序中发送Intent启动Android应用程序
  这个方式最简单,最常用。在此不在累述。关于Intent的更多内容请阅读《Intent技术简介》
  二、在shell控制台通过am命令发送Intent来启动Android应用程序
  在Android的shell控制台通过am命令发送Intent来启动Android应用程序
  关于此的详细内容请参考《Android命令am详解》
  三、在shell控制台直接通过davlikvm命令启动一个JAVA程序。
  该方式有个天生的缺点,即在其中,很多Android的JNI无法调用。因为Android的很多JNI其实是需要手动注册的。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
千锋教育
2015-12-03 · 做真实的自己 用良心做教育
千锋教育
千锋教育专注HTML5大前端、JavaEE、Python、人工智能、UI&UE、云计算、全栈软件测试、大数据、物联网+嵌入式、Unity游戏开发、网络安全、互联网营销、Go语言等培训教育。
向TA提问
展开全部
首先进入shell
C:\Documents and Settings\mawenjian>adb shell

看一下命令的帮助
# am -help
am -help
Error: Unknown command: -help
usage: am [start|instrument]
am start [-a < ACTION>] [-d < DATA_URI>]
[-t < MIME_TYPE>]
[-c < CATEGORY> [-c < CATEGORY>] ...]
[-e < EXTRA_KEY> < EXTRA_VALUE>
[-e < EXTRA_KEY> < EXTRA_VALUE> ...]
[-n < COMPONENT>] [-D] [< URI>]
am instrument [-e < ARG_NAME> < ARG_VALUE>]
[-p < PROF_FILE>]
[-w] < COMPONENT>
好了,试一下启动浏览器
# am start -n com.google.android.browser/
com.google.android.browser.BrowserActivity
am start -n com.google.android.browser/com.google.
android.browser.BrowserActivity
Starting: Intent { comp={com.google.android.browser/
com.google.android.browser.BrowserActivity} }
ok,成功了
试试下面的命令吧:
# am start -a android.intent.action.VIEW -d
http://mwjian.javaeye.com
am start -a android.intent.action.VIEW -d
http://mwjian.javaeye.com
Starting: Intent { action=android.intent.action.VIEW
data=http://mwjian.javaeye.com }
# am start -a android.intent.action.CALL -d tel:88888888
am start -a android.intent.action.CALL -d tel:88888888
Starting: Intent { action=android.intent.action.CALL
data=tel:88888888 }
# am start -a android.intent.action.ALL_APPS
am start -a android.intent.action.ALL_APPS
Starting: Intent { action=android.intent.action.ALL_APPS }
# am start -a android.intent.action.VIEW geo:0,0?q=shanghai
am start -a android.intent.action.VIEW geo:0,0?q=shanghai
Starting: Intent { action=android.intent.action.VIEW
data=geo:0,0?q=shanghai }
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式