2011-08-11 63 views
36

我必须在我的应用程序中的某个地方确定我的应用程序是否在调试模式或实时模式下运行。有没有任何功能或一段代码可用来检查。在任何情况下开/关都返回true/false。如果是这样,请帮助我。提前致谢。如何以编程方式检查应用程序是否在调试模式下运行?

+1

http://stackoverflow.com/questions/4276857/getting-debuggable-value-of-androidmanifest-from-code – Im0rtality

+0

@Imortality ...谢谢对于合作,但它不适用于我的情况。 –

+0

然后调试模式和实时模式到底是什么? – Im0rtality

回答

34

是@ Im0rtality提供的答案是正确的:

boolean isDebuggable = (0 != (getApplicationInfo().flags &= ApplicationInfo.FLAG_DEBUGGABLE)); 

(从this Google blog post

UPDATE:可能是&=应在上述表达式只是&,虽然&=是谷歌在他们的博客文章中有什么)

thanks fo r合作但它不适用于我的情况

我很抱歉听到这个消息。当然,既然解释了什么“不适合我的情况”是你选择跳过的东西,我不能帮你进一步。

+0

你有一个错字:“getApplicationInfo()”不是“getApplcationInfo()” – christoff

+0

@christoff:修正,谢谢! – CommonsWare

+1

为什么你有'&='那里?它不应该只是'&'吗? –

12

在由“直播模式”的情况下,你的意思是对Play商店中使用签名,您就可以通过检查BuildConfig.DEBUG值的2个状态之间进行区分。谷歌已经显示出它here

13
if (BuildConfig.DEBUG) { 
    // here be thine debug statement 
} 

视频作品真的很好横跨日食和Android工作室。

这里提到的其他的往往抛出运行时异常我

相关问题