当前位置:  编程技术>移动开发
本页文章导读:
    ▪关于Tasks and Back Stack的懂得        关于Tasks and Back Stack的理解学习Android Framework已有一个多星期了,对于Activity的加载始终一知半解。一直就感到疑惑的是,按“back”键后,怎么Activity的运行记录就会消失,这个机制到底是怎.........
    ▪ Hello Bada!详解之三:Bada的系统施用基础与Bada UI        Hello Bada!详解之三:Bada的系统应用基础与Bada UI四、Bada的系统应用基础 系统应用基础,指的是三个最基本的命名空间。 在Helloworld.h中大家看到引入了如下4个头文件: #include <FApp.h> #incl.........
    ▪ 手机客户端的重要推广手段       手机客户端的主要推广手段 昨天我做客速途网公开课,主要跟大家分享了自己在移动互联网产品推广方面的一些经验,今天我将昨天课程的主要内容做一个总结,希望对于在移动互联网领域.........

[1]关于Tasks and Back Stack的懂得
    来源: 互联网  发布时间: 2014-02-18
关于Tasks and Back Stack的理解

学习Android Framework已有一个多星期了,对于Activity的加载始终一知半解。一直就感到疑惑的是,按“back”键后,怎么Activity的运行记录就会消失,这个机制到底是怎么一回事?

今天,花了一个上午仔细阅读官网中Tasks and Back Stack后,忽然有种豁然开朗的感觉。下面就谈谈我的理解吧,希望对大家有帮助,有错的地方还望各位看官斧正!

 

如上图所示,本话题主要涉及三个主体,back stack,task和activity。

其中,back stack和task是一个堆栈。而说到堆栈就离不开栈元素、栈顶、栈底、出栈和入栈。

back stack的栈元素是task,而task的栈元素是activity。处于back stack的栈底的那个task,其栈底元素就是桌面(home screen)activity。关于这点其实很好理解,因为每次我们最终退出程序以后,都会返回到桌面上。相对于栈底,就要说一说栈顶了。处于back stack顶部的那个task,他的栈顶元素activity就是用户当前正在交互的那个activity。

除此之外,栈还有一个很重要的地方就是,出栈和入栈。先从入栈说起吧,back stack每次打开一个应用程序,对会为其生成一个task,之后有关于这个应用程序的activity会会作为这个task的栈元素进行出栈入栈。但是,也不是所有的有关于这个应用程序的activity都会在一个task中,我们可以通过intent中flag和activity的affinity属性项来将某些activity从这个应用程序中划分开来。当然,通过这两个属性的设置,还可以将不同应用程序的activity划分到同一个task上。

说罢入栈,咱们再来聊一聊出栈。不知道大家有没留意到back stack这个名字。back的意思,在这里不是后备的意思,而是对应手机中的back返回按键。当我们每按一次back键的时候,处于back stack栈顶的那个task就会将其最顶的那个activity出栈。当这个task为空的时候,这个task也会从back stack中出栈。

除了出栈和入栈之外,back stack会有其他的行为。比如说,某个activity设置为singletask,意为这个activity仅会在一个task中实例化一次,如果系统需要调用这个activity实例的时候,系统中已经存在这个activity实例,那么系统就不会按照默认行为,再次实例化这个activity并将这个activity实例压入栈顶task中,而是将处于back stack中那个拥有这个activity实例的task抽出来,放到back stack的栈顶中。

以上只是我的个人见解,转载请注明出处,方便更正,谢谢!


    
[2] Hello Bada!详解之三:Bada的系统施用基础与Bada UI
    来源: 互联网  发布时间: 2014-02-18
Hello Bada!详解之三:Bada的系统应用基础与Bada UI

四、Bada的系统应用基础

系统应用基础,指的是三个最基本的命名空间。

在Helloworld.h中大家看到引入了如下4个头文件:

#include <FApp.h>  
#include <FBase.h>  
#include <FSystem.h>  
#include <FUi.h>  
前三个就是应用、基础和系统命名空间的头文件。

App命名空间前面也介绍过了,下面是此空间中类关系图:



Helloworld类是继承自Osp::App::Application。

且Helloworld是应用程序的实例。

Base命名空间是基本的类型空间,类关系图如下:


而系统命名空间提供系统管理属性,比如系统时间、警告、震动、电量和设备管理。

主要的类有:Alarm、Battery、DeviceManager、PowerManager、RuntimeInfo、SettingInfo、SystemInfo、SystemTime、Vibrator以及一些相关接口。

有了这些背景知识,后面就会慢慢深入学习了。下面进入所有移动开发都会经历的重头戏--UI。


五、Bada的UI

UI这块领地向来都是各公司派重兵驻守之地。一个令人惊艳的UI和用户体验会使产品有非常棒的成绩单。比如iPhone就是如此的惊艳了一把。

同样的,Windos phone 7 的Metro界面也是与众不同,赢得了大把掌声。而Bada的UI算是中规中矩。

Bada的UI命名空间主要由五部分组成:

1、控件部分Osp::Ui::Controls,主要有Osp::Ui::Control类和Osp::Ui::Container类组成。

2、处理事件部分,Osp::Ui::ITouchEventListener处理控件的相关事件。

3、布局部分,Osp::Ui::Layout类来负责。

4、创建动画,Osp::Ui::Animations类负责。

5、剪贴板,Osp::Ui::Clipboard负责应用程序间的复制与粘贴。


Bada系统的UI层次:最底层是应用程序的Frame(容器),在Frame上面是Form。通常一个应用程序只有一个Frame,它是由Bada框架负责的,我们不用关心,而Form可以有多个,这个概念与WM或windows开发中的Form类似。再上一层就是各式各样的控件了。如下图:


在应用程序初始化时会将Form加到应用程序的Frame上:

// Create a form  
    HelloworldForm *pHelloworldForm = new HelloworldForm();  
    pHelloworldForm->Initialize();  
  
    // Add the form to the frame  
    Frame *pFrame = GetAppFrame()->GetFrame();  
    pFrame->AddControl(*pHelloworldForm);  
  
    // Set the current form  
    pFrame->SetCurrentForm(*pHelloworldForm);  
  
    // Draw and Show the form  
    pHelloworldForm->Draw();  
    pHelloworldForm->Show();  
Hello Bada!中用到的控件是Label和Button,这是最常使用的控件了,无论在哪个平台上。


Bada的布局是怎么样的呢?想必很多人都会关心这个问题,那么我会在下一篇文章详细介绍。


    
[3] 手机客户端的重要推广手段
    来源: 互联网  发布时间: 2014-02-18
手机客户端的主要推广手段

昨天我做客速途网公开课,主要跟大家分享了自己在移动互联网产品推广方面的一些经验,今天我将昨天课程的主要内容做一个总结,希望对于在移动互联网领域创业的朋友们能够有所帮助。

首先想说的是,没有最好的推广手段,只有最合适的推广策略。

经济学上有一个一般均衡理论,其实我看了,一般均衡理论同样适用于网络营销领域。从长远来讲,任何一种网络营销手段,只要长期存在,那么它最终的投入产出比一定是趋于相等的。如果又一个手段效果突出,那么大家就会都将资源投过来,导致竞争加剧,最终成本上升,效果变差。

但是在一个好的推广手段刚出来时,它的投入产出比是可以超过平均水平的,因为由于手段新,使用还不普遍,比如过去的SEO,比如现在的ASO。但是我们要有一个认识,那就是即使现在效果好的手段,长期来讲效果也总会变差的,所以,一定不要寄希望于单一的推广手段。

真正重要的是营销策略,一个好的产品定位及优秀的营销策划,才是产品推广取得成功的关键所在。但是好的营销策划,就可遇不可求了,不但考验营销人的经验、资源,还要有很强的创新精神及过硬的营销团队。当然不是说我们就做不出好的营销策划,但是这不是我今天要讲的主题,我要讲的是移动应用的主要推广手段,至于最终这些手段怎么组合,怎么形成整体的营销策略,就要看大家自己了!


首先要跟大家强调的是,应用市场是当前移动应用最主要的分发渠道。这当然是众所周知的,也正因为如此,应用市场的推广竞争非常激烈。总体上来讲,移动应用的推广手段主要有以下几种。

1.将你的应用发布到市场。

这是一切推广手段的基础,也是最容易被大家忽略的一点。有人问我,只发布就行吗?移动应用不像网站,网站数以十亿计,你做一个网站,不推广不会有人看。但是移动应用,总的数量才几十万,而用户有好几亿,单个分类下的应用数量还是相对较少的,这种情况下,只要你发布,就一定能给你带来下载。尤其要提醒安卓平台的开发者,中国的第三方安卓应用市场的下载量是远高于谷歌市场的,所以你一定不要以为将产品发布到谷歌市场就OK了,一定要多发布,你发布的市场越多,你的展现机会就越多。如果你发布五十个市场,每个市场每天给你带来一个下载,一个月就是一千五百的下载了!你觉得没有价值吗?

2.应用市场的活动合作及广告投放。

现在国内的第三方市场商业化很厉害,推荐软件、最新软件、装机必备等等,甚至连本周最佳应用、猜你喜欢都是可以投放广告的位置,另外很多市场都提供首发活动的合作,这些应用市场的付费推广效果都不错,但是价格也不菲。这些我不多讲,大家找到各大市场的商务合作经理,要一份广告刊例价格表就一目了然。我想提醒大家的是,无论是广告投放还是和市场合作,一定要注意移动应用的榜单效应。这在我另一篇专栏里有介绍,大家可以去看一下。

3.ASO(App Store Optimization)

ASO是最近开始热起来的一个概念,指的是通过一定的优化手段,提高应用在用户搜索结果页面展示率的技术。从低成本的角度来讲,ASO是相当好的一种推广手段,强烈建议大家在合理的范围内做好ASO。营销ASO效果的因素很多,比如应用的名称、简介、描述、截图、甚至是图标等等,具体大家可以参看我之前在互联网观察者博客的一些文章,有详细的解读。

4.流量互换

基本上所有的应用市场都提供了流量互换的合作方式,你能给他带来用户,它便帮你推荐应用。但是实际上流量互换不仅限于跟应用市场的合作,大家还可以通过各种渠道找到希望交换流量的应用开发者,实现合作共赢。

5.广告投放及手机预装

不只是应用市场的广告投放,现在已经有越来越多的针对移动端的广告平台。但是不管是CPA还是CPC,根据我的经验,在没有很好的产品定位及营销策略的情况下,单个激活用户的成本基本都在2块以上了,不是财大气粗的话,还是很难承受这样的推广成本的。手机预装的价格则更高,低则三四块,高则五块以上。重点是你舍得花钱都不一定有手机厂商愿意预装,对你的产品质量还是有较高的要求的。

此外,传统互联网的推广手段也非常重要。应用市场是当前移动应用的主要分发途径,但是大家要注意,用户下载应用主要通过手机市场,但是用户获取应用的信息却还是很依赖传统互联网的,因此,传统互联网的推广手段很多还是很奏效的。

1.首先是搜索营销

基于搜索引擎的SEO、SEM大家都能想到,但是这里讲的搜索营销不只是搜索引擎营销,其实大家应该明白除了搜索引擎之外,现在几乎任何网站都有搜索框,只要有搜索,就会有算法,只要有算法,就可以有针对性的进行优化。比如刚才讲的ASO、比如在论坛搜索结果页的展示优化等等。只要你的关键字分析做到位,就可以收到很好的效果。

2.论坛营销

论坛营销也是在移动应用的推广中常见的推广手段。除了付费的论坛活动、置顶帖之外。论坛还是草根开发者进行低成本应用推广的一个非常好的途径。但是在论坛的推广中,大家要注意,不要一上来就发广告,且不说版主对你的删帖和封杀操作,单纯的广告贴有多少用户会浏览呢?在论坛营销中,最重要的是你要跟大家先打成一片,先谈交情,再谈买卖!

3.软文推广

可能有朋友说软文推广主要是为了做市场宣传,实际上不然,软文可以有很多作用。首先,软文发到大型网站,如果文内可以加外链,这首先是SEO方面一个不错的外链来源,另外这些文字本身会有一定权重,有针对的起一个文字标题,没准也能获得不错的流量。其次,软文可以辅助事件营销和病毒营销,起到追踪和加深事件传播效果的作用。最后软文还有大家都了解的市场宣传和品牌推广的作用。

4.百科和问答推广

百科就不多讲了,建议大家在将应用发布到市场的同时,也要在百度百科等网站创建词条,这是很好的免费宣传途径。至于问答推广,现在越来越难做,百度查广告越来越严格,但是据我的观察,现在腾讯、360等公司在问答里的推广投入还是比较大的,大家可以去百度知道里观察一下。

5.社会化媒体营销

这里重点讲以下微博,很多朋友都把微博作为一个广告发布的平台来做,买一些粉丝,发一些广告,敢问你这不是在自己玩自己吗?微博营销的本质是沟通互动。微博的主要作用在我看来有两个,一个是挖掘客户,另一个是追踪服务。除此之外的微博营销活动,要不就是大公司的市场宣传,要不就是无稽之谈。

因为篇幅有限,我只是将各种推广手段做了一个罗列,感兴趣的朋友可以去看一下我课程的视频回放,可能能更好的理解我的营销观点。此外,除了了解各种推广手段,大家一定要制订一个好的推广时间表,组建一个可靠的推广团队,只有这样,你的推广工作才能取得成功。

最后,再次强调一遍,没有做好的推广手段,只有最适合的营销策略!

1楼MrXiao95前天 15:26额。

    
最新技术文章:
▪Android开发之登录验证实例教程
▪Android开发之注册登录方法示例
▪Android获取手机SIM卡运营商信息的方法
▪Android实现将已发送的短信写入短信数据库的...
▪Android发送短信功能代码
▪Android根据电话号码获得联系人头像实例代码
▪Android中GPS定位的用法实例
▪Android实现退出时关闭所有Activity的方法
▪Android实现文件的分割和组装
▪Android录音应用实例教程
▪Android双击返回键退出程序的实现方法
▪Android实现侦听电池状态显示、电量及充电动...
▪Android获取当前已连接的wifi信号强度的方法
▪Android实现动态显示或隐藏密码输入框的内容
▪根据USER-AGENT判断手机类型并跳转到相应的app...
▪Android Touch事件分发过程详解
▪Android中实现为TextView添加多个可点击的文本
▪Android程序设计之AIDL实例详解
▪Android显式启动与隐式启动Activity的区别介绍
▪Android按钮单击事件的四种常用写法总结
▪Android消息处理机制Looper和Handler详解
▪Android实现Back功能代码片段总结
▪Android实用的代码片段 常用代码总结
▪Android实现弹出键盘的方法
▪Android中通过view方式获取当前Activity的屏幕截...
▪Android提高之自定义Menu(TabMenu)实现方法
▪Android提高之多方向抽屉实现方法
▪Android提高之MediaPlayer播放网络音频的实现方法...
▪Android提高之MediaPlayer播放网络视频的实现方法...
▪Android提高之手游转电视游戏的模拟操控
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3