判断App整体处于前台还是后台

标签: app 后台 | 发表时间:2015-11-30 19:26 | 作者:u012975705
出处:http://blog.csdn.net
  转载请注明转自:[noyet12的博客](http://blog.csdn.net/u012975705) 
博客原址:http://blog.csdn.net/u012975705/article/details/50109883

上篇博客说道,在项目中使用Notification,想要的效果是在app退出前台工作时拉取后台数据,发现新动态则在通知栏提示用户。要达到这个效果,就必须判断当前app是否处于前台工作,下面给出判断方法。

      public boolean isAppOnForeground() {
        ActivityManager activityManager = (ActivityManager) getApplicationContext().getSystemService(
                Context.ACTIVITY_SERVICE);
        String packageName =getApplicationContext().getPackageName();
        List<ActivityManager.RunningAppProcessInfo> appProcesses =  activityManager.getRunningAppProcesses();
        if (appProcesses == null) {
            return false;
        }
        for (ActivityManager.RunningAppProcessInfo appProcess : appProcesses) {
            if (appProcess.processName.equals(packageName)
                    && appProcess.importance == ActivityManager.RunningAppProcessInfo.IMPORTANCE_FOREGROUND) {
                return true;
            }
        }
        return false;
    }

使用方式:

   @Override
    protected void onStop() {
        super.onStop();
        if (MainApplication.getInstance().getIsLogin()
                && !MainApplication.getInstance().isAppOnForeground()) {
            mTask = new TimerTask() {
                @Override
                public void run() {
                    getNews();
                }
            };
            mTimer = new Timer();
            mTimer.schedule(mTask, 3 * 1000, 3 * 60 * 1000);
        }
    }
作者:u012975705 发表于2015/11/30 11:26:05 原文链接
阅读:115 评论:0 查看评论

相关 [app 后台] 推荐:

判断App整体处于前台还是后台

- - CSDN博客推荐文章
转载请注明转自:[noyet12的博客](http://blog.csdn.net/u012975705) 博客原址:http://blog.csdn.net/u012975705/article/details/50109883. 上篇博客说道,在项目中使用Notification,想要的效果是在app退出前台工作时拉取后台数据,发现新动态则在通知栏提示用户.

产品实例:某项目APP后台系统设计

- - 人人都是产品经理
今年有幸参与了某度假屋项目从0到1的设计过程,展示给用户的是精致的APP,然而APP背后却是逻辑比较复杂的后台系统. APP的使用体验,很大程度上是由后台系统决定的,后台系统逻辑的合理性决定了APP的核心流程. 简要介绍一下此项目的业务流程如图1所示:. 业主购买度假屋并由物业管理公司托管,业主购买度假屋有三种类型:全套、分权、分时,全套即业主购买整套度假屋,分权即业主购买度假屋部分产权,分时即业主购买某季的居住权.

多屏时代的App实时同步,BackWire为开发者提供后台跨屏数据同步的BaaS解决方案

- - 互联网的那点事...
移动互联网时代,要想给用户提供一个完整、无缝的产品体验,开发者必须为自己的产品开发支持多个终端的应用. 同时在多终端环境下,还要解决各终端间数据实时同步的问题. 而昨天在InnoSpace 的首届DemoDay 上,就出现了一家为开发者提供App 多终端数据实时同步服务的创业公司: Backwire.

App 和 iCloud

- 笑炊 - 爱范儿 · Beats of Bits
iCloud 的技术细节还在 NDA 的保护下. 但是大家的好奇心不能等到 NDA 失效再满足. 本文基于对 iCloud 的猜测写成,靠谱与否,等待时间检验. 打开浏览器,嗯,今天用 Safari , Chrome , IE 或者 Firefox. 输入 Twiter.com ,啊,不对,是 Twitter.com.

App Internet 革命

- Cary - Mr. Jamie 看網路與創投
Apple 公布最新一季的財報,3 個月賣出了破紀錄的 3,500 萬台 iDevices (iPhone, iPad & iPods). Google 公布最新數字,全球有 1.9 億支 Android 已經被啟用. 大家很興奮「智慧型手機」、「行動裝置」革命終於來到,我卻隱隱感覺到另一件更重大的事情正在發生,我們所熟知的「網路」,即將經歷另一次大幅度的轉變.

浅析App Engine

- - 搜索研发部官方博客
在国内外,云计算正在大步的走向商业化的道路,也得到了越来越多公司的重视. 其中平台即服务(Platform-as-a-Service  PaaS)已经称为业界探讨云计算的热点方式之一,采用PaaS模式来构建应用运行平台App Engine是一种重要的实现方式. 本文主要是对App Engine的背景、特点、需求等进行分析整理,并据此对业界主要的App Engine进行了调研分析.

Mobile App 将死?!

- - Tech2IPO
日前,Mozilla 产品副总监 Jay Sullivan 称移动应用不久即将成为历史,未来将是移动 Web 应用的天下. 光盘好歹还能当杯垫,可怜 Mobile App,难道就这样一下跌落进历史的垃圾堆. Mozilla 的产品副总监杰 • 沙利文 (Jay Sullivan, 上图) 日前表示,移动终端应用(Mobile App)没有未来,真正有前途的是移动 Web 应用(Mobile Web App).

APP已死?

- - 商业不靠谱
APP目前面临的几大窘境将促使搜索引擎由Search向Service、Getting 转变以适应用户在APP时代养成的简洁、高效等习惯. 《未来移动终端应用 C/S Vs B/S 架构》 许永硕——物联网智库. 参照PC软件的发展历程,B/S架构或许是破解APP难题的出路,目前,微信开放平台、手机QQ等在尝试扮演Browser(http://open.weixin.qq.com).

欺诈 app 追杀 — 给 App Store 的信

- Webto - Wangling
感谢 @apple4us 的建议. 我深知如果等着别人相助,此事大概会不了了之,届时只徒留一篇愤概文章. 所谓“追杀”,敌未死,我未停,正如给“动车追尾”事件的受害人追讨公道,公道未到,追讨不止. 于是,我刚给 App Store 发了信,如下:. 每人干掉一个坏蛋…,坏蛋没那么多;每一百个人、每一千个人、甚至每一万个人干掉一个坏蛋,世界都会美好许多.

Web App和Native App 谁将是未来

- - 互联网旁观者
未来是Web App的天下,还是Native App的天下. 作为设计师,我们是应该努力把客户端的体验提升到最优,还是在网页应用层面上做更多的设计. 那么,我们首先应该立体的认识一下Web App和Native App. Web 无需安装,对设备碎片化的适应能力优于App,它只需要通过XHTML、CSS和JavaScript就可以在任意移动浏览器中执行.