谁知道怎么让一个android程序在进程中只启动一个? 现在有两个activity,一个启动时用,一个供用户操作。热键绑定的是启动时的那个。程序运行时我每次都容易不小心按到热键,然后程序重新启动一次。这样感觉很不好,什么方法可以让系统中次进程只运行一个,当程序运行时,再按热键也没用?不是让activity在栈中只有一个啊。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 还是看看launch mode,可以解决的 android:launchMode="singleTop" 和android:launchMode="singleTask"和android:launchMode="singleInstance"都试了不行。 一个进程APK启动的话,总得有一个入口类吧,对这个类采用单件模式,禁止创建多个实例 我把launchMode改为singleTask,就是觉得该这样。可惜不行。 就没有办法阻止启动的那个activity出来吗? 我不知道你的热键是怎么检测的,不过我想可不可以在执行启动的时候做下过滤呢?判断下栈顶的Activity是不是你this. 这个应该是判断不了,我改了那个热键的值,把他直接绑定我的activity上来,不管什么情况下按下那个热键我的activity就启动。我想问问android就没提供什么保证一个activity在栈中只能有一个,同时别人去调他的时候不会把它栈上面的activity给销毁掉的东西? 做成QQ那样不行吗,当按热键时,把程序弄成Foreground形式的service,这样程序就不会被关闭了然后用户通过Foreground图标打开然后程序再加launchMode为singleTask试试 谢谢你帮忙,现在是碰到热键时直接就启动跟热键绑定的activity了,我尝试监听这个热键,可是在onkeydown()方法里监听不到,对于怎么在activity里监听系统热键我没研究过,能说一下方法吗? 应该是可以检查栈顶的Activity吧!貌似有个getCurrentActivity()方法来的. 然后判断一下instance of.如果true,则什么都不做.否则.... 唉,这热键做的有利有弊啊。那个检查栈中activity的我能检测,现在这个热键跟HOME一样是系统热键,我在onkeydown里检测不到,你会检测系统热键不? @Override public boolean dispatchKeyEvent(KeyEvent event) { if (event.getKeyCode() == event.KEYCODE_BACK) { getWindow().setTitle("BACK"); return false; } else { return super.dispatchKeyEvent(event); } } 真的,像返回键,音量加减这种热键,跟HOME键和发邮件热键还有我说的那个,这类按下直接连到另一个apk的热键监听不一样。 嗯,如我18楼回你的,你代码中的只是监听了返回键,那样可以。可是返回键、音量加减这类热键的监听方法和HOME键,邮件发送热键这类热键的监听是不一样的。你如果可以用那个方法监听到HOME的这类热键,说明你程序中肯定加了别的什么代码,而你没贴出来。 不知道你说的热键是指手机下面的几个功能键吗?硬件功能键,首页\返回\音量调节键?我刚才试了,首页的那个监听不到android开发站上写这个键消息是不会发送到程序级,只到framework级返回和音量调节我试了是可以监听的 android如何实现自定义状态栏? 做一个bar code and Qr code Android如何关闭Socket? 求助!android短信发送后写入短信库 Android交流 我用多普达s1的手机内置IE浏览wap网站的时候,提示“该页包含错误,无法显示” 百度地图api 关于屏幕适配的问题 BottomBar每个按钮不同layout怎么添加 intent跳转会闪退 如何去掉乐Phone progressdialog上的取消按钮 动态填充TableLayout,如何让表格充满屏幕?如何设置动态生成的Textview的字体大小?
然后用户通过Foreground图标打开
然后程序再加launchMode为singleTask试试
@Override
public boolean dispatchKeyEvent(KeyEvent event) {
if (event.getKeyCode() == event.KEYCODE_BACK) {
getWindow().setTitle("BACK");
return false;
} else {
return super.dispatchKeyEvent(event);
}
}
硬件功能键,首页\返回\音量调节键?
我刚才试了,首页的那个监听不到android开发站上写这个键消息是不会发送到程序级,只到framework级
返回和音量调节我试了是可以监听的