首页 > 精品范文库 > 3号文库
幼儿园如何选择一款自己的APP?5篇
编辑:诗酒琴音 识别码:12-892104 3号文库 发布时间: 2024-01-30 10:59:57 来源:网络

第一篇:幼儿园如何选择一款自己的APP?

幼儿园如何选择一款自己的APP?

据工业和信息化部统计显示,目前中国手机上网用户已达8亿人左右。人们的生活已离不开智能手机,一部千元的手机就能完成移动办公、购物、社交、娱乐等多种应用。202_年下半年移动终端流量全面超过PC互联网,网民的依赖性逐渐增强,移动互联网时代来临。

智能终端的普及推动了移动互联网的发展,也带来了APP应用的爆炸式增长。一些传统行业诸如医疗、娱乐、交通、生活服务等纷纷与移动互联网相结合,创建了本行业的APP手机客户端。目前世界500强公司以及国内诸多大型企业均拥有了自己的APP,这标志着,APP客户端的商业使用,已经初露锋芒。

教育作为关乎国计民生的重大行业,与互联网的关系可谓紧密相联。前几年,顺应互联网的发展,国家提出了“数字化校园”工程的概念。投影仪、电脑、网站建设等数字技术在全国各大院校、幼儿园普及发展。进入移动互联网时代,如何与移动互联网结合成为当下教育行业的重要议题。专家预测,未来几年移动互联网与教育的整合将迎来爆点。

幼儿园建立自己专属APP是移动互联网时代的必然趋势,一款优秀的APP将对园区的管理和服务体系产生深远影响,具体表现在提升园区形象、提高办公效率、增强家园共育等方面,目前国内一些大型的幼儿园都已开始着手创建自己园区专属的APP手机客户端。家园宝幼儿园APP应运而生。

APP可分为标准APP、定制APP。家园宝幼儿园APP提供了标准版和定制版,标准版包含了基本的功能,像宝宝成长日记、通知公告、我的班级、每周食谱、精彩瞬间、育英知识、校车通知(假如学校有校车的话)、在线支付、儿童广场这些功能;而定制的APP可以让幼儿园拥有自己特色的功能,如有些高端私立的幼儿园它为每个学员配备了一个GPS,家园宝幼儿园APP就可以对这个GPS进行定向开发以满足这所幼儿园的需求。

移动互联网时代是一个逐步信息化的过程,幼儿园教育亦如此。在激烈的行业竞争中,紧跟时代潮流,拥抱新技术,占领信息化高地,成为关乎幼儿园未来是否持续、高效发展的关键。

第二篇:一款基于Material Desgin设计的APP

一款基于Material Desgin设计的APP

介绍

淘School是一款基于MD的一款校园二手商品交易平台,当然小编只是简单的开发了一些功能,并没有完善,只是想做一款MD的APP,并没有交易支付的功能,只是把我感觉比较好的MD的一些组件融到了项目中,下面小编来详细介绍一下用到的技术:

因为小编服务器端不是很熟练,所以就用了Bmob,还不错挺容易上手的,就依赖了它的两个库而已,网络请求和模型都是封装好的,我们直接调用就可以。

先看一下小编引用的一些库吧:

compile 'com.android.support:appcompat-v7:23.1.0'

compile files('libs/BmobSDK_V3.4.5_1111.jar')

compile files('libs/okio-1.4.0.jar')

compile 'com.android.support:support-v4:23.1.0'

compile 'com.github.manuelpeinado.fadingactionbar:fadingactionbar-abc:3.1.2'

compile 'com.android.support:design:23.1.0'

compile 'com.pnikosis:materialish-progress:1.7'

compile 'me.drakeet.materialdialog:library:1.2.8'

compile 'com.jakewharton:butterknife:7.0.1'

compile 'com.nostra13.universalimageloader:universal-image-loader:1.9.5'

compile 'com.weiwangcn.betterspinner:library:1.1.0' compile 'com.nineoldandroids:library:2.4.0'

1.Android Support Desgin

CollapsingAvatarToolbar 头像随ListView滚动缩回到ActionBar特效

TextInputLayout带动画的输入框

2.ActionBarDrawerToggle、DrawerLayout、ActionBar 结合

3.RippleEffect水波纹效果

4.PagerSlidingTabStrip+viewpager实现选项卡左右滑动

5.FloatActiconButton悬浮按钮实现仿钉钉悬浮按钮

6.PullToZoomScrollView实现下拉自动放大头部View

7.materialdialog实现的对话框

8.MaterialSpinner实现的带效果的spinner

9.butterknife注解框架

小编用到的技术基本上就这些,下面小编会详细的介绍一下。

技术实现

1.主界面

先介绍一下主界面吧,主界面小编用的是ActionBarDrawerToggle+DrawerLayout+ActionBar实现的滑动抽屉效果。布局文件就不介绍了,这个用的也挺多的,网上资料也很多,介绍几个方法吧

//设定左上角突变可点击

getSupportActionBar().setHomeButtonEnabled(true);

// 给左上角图标的左边加上一个返回的图标。对应ActionBar.DISPLAY_HOME_AS_UP

getSupportActionBar().setDisplayHomeAsUpEnabled(true);

//设置标题 getSupportActionBar().setTitle(getResources().getString(R.string.action_title));

// 使自定义的普通View能在title栏显示,即actionBar.setCustomView能起作用,对应ActionBar.DISPLAY_SHOW_CUSTOM

actionBar.setDisplayShowCustomEnabled(true)closeDrawers();//关闭抽屉

2.滑动选项卡

小编主界面的滑动选项卡用的是PagerSlidingTabStrip+viewpager管理fragment

3.主界面的悬浮按钮

悬浮按钮在github上有Demo,用的是第一个,然后重写了一下里面的滑动监听实现了listview滑动显示隐藏按钮。看一下布局文件:

android:id=“@+id/multiple_actions”

android:layout_width=“wrap_content”

android:layout_height=“wrap_content”

android:layout_alignParentBottom=“true”

android:layout_alignParentRight=“true”

android:layout_alignParentEnd=“true”

fab:fab_addButtonColorNormal=“@color/origle”

fab:fab_addButtonColorPressed=“@color/origle_tab”

fab:fab_addButtonPlusIconColor=“@color/white”

fab:fab_labelStyle=“@style/menu_labels_style”

android:layout_marginBottom=“@dimen/smaller_space”

android:layout_marginRight=“@dimen/smaller_space”

android:layout_marginEnd=“@dimen/smaller_space”>

android:id=“@+id/fb_update”

android:src=“@drawable/update”

fab:fab_labelStyle=“@style/menu_labels_style”

android:layout_width=“wrap_content”

android:layout_height=“wrap_content”

fab:fab_colorNormal=“@color/theme_color”

fab:fab_colorPressed=“@color/theme_color_tab”/>

android:id=“@+id/fb_new”

fab:paddingEnd=“@dimen/small_space”

android:src=“@drawable/edit”

android:layout_width=“wrap_content”

android:layout_height=“wrap_content”

fab:fab_colorNormal=“@color/theme_color”

fab:fab_colorPressed=“@color/theme_color_tab”/>

android:id=“@+id/fb_person”

android:layout_width=“wrap_content”

android:layout_height=“wrap_content”

android:src=“@drawable/title_person”

fab:fab_colorNormal=“@color/theme_color”

fab:fab_colorPressed=“@color/theme_color_tab”/>

下面是重写的ListView滑动监听实现显示隐藏悬浮按钮

public void attachToListView(@NonNull AbsListView listView,ScrollDirectionListener scrollDirectionListener,AbsListView.OnScrollListener onScrollListener){

AbsListViewScrollDetectorImpl scrollDetector = new AbsListViewScrollDetectorImpl();

scrollDetector.setScrollDirectionListener(scrollDirectionListener);

scrollDetector.setOnScrollListener(onScrollListener);

scrollDetector.setListView(listView);

scrollDetector.setScrollThreshold(mScrollThreshold);

listView.setOnScrollListener(scrollDetector);

}

private class AbsListViewScrollDetectorImpl extends AbsListViewScrollDetector {

private ScrollDirectionListener mScrollDirectionListener;

private AbsListView.OnScrollListener mOnScrollListener;

private void setScrollDirectionListener(ScrollDirectionListener scrollDirectionListener){

mScrollDirectionListener = scrollDirectionListener;

}

public void setOnScrollListener(AbsListView.OnScrollListener onScrollListener){

mOnScrollListener = onScrollListener;

}

@Override

public void onScrollDown(){

show();

if(mScrollDirectionListener!= null){

mScrollDirectionListener.onScrollDown();

}

}

@Override

public void onScrollUp(){

hide();

if(mScrollDirectionListener!= null){

mScrollDirectionListener.onScrollUp();

}

}

@Override

public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount,int totalItemCount){

if(mOnScrollListener!= null){

mOnScrollListener.onScroll(view, firstVisibleItem, visibleItemCount, totalItemCount);

}

super.onScroll(view, firstVisibleItem, visibleItemCount, totalItemCount);

}

@Override

public void onScrollStateChanged(AbsListView view, int scrollState){

if(mOnScrollListener!= null){

mOnScrollListener.onScrollStateChanged(view, scrollState);

}

super.onScrollStateChanged(view, scrollState);

}

}

public void show(){

show(true);

}

public void hide(){

hide(true);

}

public void show(boolean animate){

toggle(true, animate, false);

}

public void hide(boolean animate){

toggle(false, animate, false);

}

private void toggle(final boolean visible, final boolean animate, boolean force){

if(mVisible!= visible || force){

mVisible = visible;

int height = getHeight();

if(height == 0 &&!force){

ViewTreeObserver vto = getViewTreeObserver();

if(vto.isAlive()){

vto.addOnPreDrawListener(new ViewTreeObserver.OnPreDrawListener(){

@Override

public boolean onPreDraw(){

ViewTreeObserver currentVto = getViewTreeObserver();

if(currentVto.isAlive()){

currentVto.removeOnPreDrawListener(this);

}

toggle(visible, animate, true);

return true;

}

});

return;

}

}

int translationY = visible ? 0 : height + getMarginBottom();

if(anwww.teniu.ccimate){

ViewPropertyAnimator.animate(this).setInterpolator(mInterpolator)

.setDuration(TRANSLATE_DURATION_MILLIS)

.translationY(translationY);

} else {

ViewHelper.setTranslationY(this, translationY);

}

// On pre-Honeycomb a translated view is still clickable, so we need to disable clicks manually

if(!hasHoneycombApi()){

setClickable(visible);

}

}

}

private int getMarginBottom(){

int marginBottom = 0;

final ViewGroup.LayoutParams layoutParams = getLayoutParams();

if(layoutParams instanceof ViewGroup.MarginLayoutParams){

marginBottom =((ViewGroup.MarginLayoutParams)layoutParams).bottomMargin;

}

return marginBottom;

}

private boolean hasHoneycombApi(){

return Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB;

} }

然后再activity中这样用:

fab.attachToListView(lvProduct, new ScrollDirectionListener(){

@Override

public void onScrollDown(){

Log.d(“ListViewFragment”, “onScrollDown()”);

}

@Override

public void onScrollUp(){

Log.d(“ListViewFragment”, “onScrollUp()”);

}

}, new AbsListView.OnScrollListener(){

@Override

public void onScrollStateChanged(AbsListView view, int scrollState){

Log.d(“ListViewFragment”, “onScrollStateChanged()”);

}

@Override

public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount){

Log.d(“ListViewFragment”, “onScroll()”);

}

});

很简单。

4.商品详细界面上下滑动头像回到actionbar上

这个效果是小编一直都想实现的,因为技术、时间、能力有限,所以一直没去搞,在网上搜了好多相关的帖子,博客,终于让我找到一个类似的,做了一下改动实现了。

这个技术是CoordinatorLayout+Toolbar+CollapsingAvatarToolbar实现的。实际上support desgin可以实现文字的上下滑动但是没有头像的上下滑动改变大小。CollapsingAvatarToolbar这个组件实现了这一效果,当然并不是小编写的,只是小编改的,但是能改出来小编也已经很高兴了。给大家看一下布局:

<?xml version=“1.0” encoding=“utf-8”?>

android:id=“@+id/main_content”

android:layout_width=“match_parent”

android:layout_height=“match_parent”

android:background=“@color/theme_color”

android:clipToPadding=“true”

android:fitsSystemWindows=“true”>

android:id=“@+id/appbar”

android:layout_width=“match_parent”

android:layout_height=“200dp”

android:theme=“@style/ThemeOverlay.AppCompat.Dark.ActionBar”>

android:id=“@+id/collapsing_toolbar”

android:layout_width=“match_parent”

android:layout_height=“match_parent”

app:contentScrim=“@color/theme_color”

app:layout_scrollFlags=“scroll|exitUntilCollapsed”>

android:id=“@+id/toolbar”

android:layout_width=“match_parent”

android:layout_height=“?attr/actionBarSize”

app:layout_collapseMode=“pin”

app:popupTheme=“@style/ThemeOverlay.AppCompat.Light” />

android:id=“@+id/stuff_container”

android:layout_width=“wrap_content”

android:layout_height=“?attr/actionBarSize”

android:orientation=“vertical”>

android:id=“@+id/usericon”

android:layout_width=“40dp”

android:layout_height=“40dp”

android:layout_gravity=“center_vertical”

android:src=“@drawable/defaut” />

android:id=“@+id/username”

android:layout_width=“wrap_content”

android:layout_height=“wrap_content”

android:layout_gravity=“center_vertical”

android:fontFamily=“sans-serif-medium”

android:text=“Hankkin”

android:textColor=“@android:color/white”

android:textSize=“18dp” />

android:layout_width=“match_parent”

android:layout_height=“match_parent”

android:background=“@color/gray”

app:layout_behavior=“@string/appbar_scrolling_view_behavior”>

android:padding=“@dimen/small_space”

android:orientation=“vertical”

android:layout_width=“match_parent”

android:layout_height=“wrap_content”>

android:gravity=“center_vertical”

android:padding=“@dimen/small_space”

android:orientation=“horizontal”

android:layout_width=“match_parent”

android:layout_height=“wrap_content”>

android:id=“@+id/iv_user_head”

android:src=“@drawable/defaut”

android:layout_width=“35dp”

android:layout_height=“35dp” />

android:layout_marginLeft=“@dimen/small_space”

android:textSize=“@dimen/normal_textSize”

android:text=“Hankkin”

android:textColor=“@color/black”

android:layout_weight=“1”

android:id=“@+id/tv_username”

android:layout_width=“wrap_content”

android:layout_height=“wrap_content” />

android:textColor=“@color/deep_gray”

android:textSize=“@dimen/small_textSize”

android:text=“asdas”

android:id=“@+id/tv_time”

android:layout_width=“wrap_content”

android:layout_height=“wrap_content” />

android:layout_marginLeft=“@dimen/small_space”

android:textColor=“@color/black”

android:textSize=“@dimen/normal_textSize”

android:id=“@+id/tv_pro_name”

android:layout_width=“wrap_content”

android:layout_height=“wrap_content”

android:text=“二手” />

android:layout_marginLeft=“@dimen/small_space”

android:textColor=“@color/black”

android:textSize=“@dimen/normal_textSize”

android:id=“@+id/tv_pro_desc”

android:layout_width=“wrap_content”

android:layout_height=“wrap_content” />

android:scaleType=“fitXY”

android:id=“@+id/iv_product”

android:layout_width=“match_parent”

android:layout_height=“300dp”

android:background=“@color/deep_gray” />

android:paddingBottom=“@dimen/small_space”

android:orientation=“honc630.comrizontal”

android:layout_width=“match_parent”

android:layout_height=“wrap_content”>

android:drawablePadding=“@dimen/tiny_space”

android:drawableLeft=“@drawable/location”

android:textSize=“@dimen/small_textSize”

android:layout_marginTop=“@dimen/small_space”

android:layout_marginLeft=“@dimen/middle_space”

android:text=“天津理工大学”

android:id=“@+id/tv_school”

android:layout_weight=“1”

android:layout_width=“wrap_content”

android:layout_height=“wrap_content” />

android:textSize=“@dimen/small_textSize”

android:textColor=“@color/theme_color”

android:layout_marginRight=“@dimen/middle_space”

android:layout_marginTop=“@dimen/small_space”

android:text=“¥”

android:id=“@+id/tv_price”

android:layout_width=“wrap_content”

android:layout_height=“wrap_content” />

android:layout_marginTop=“@dimen/middle_space”

android:orientation=“horizontal”

android:layout_width=“match_parent”

android:layout_height=“64dp”>

android:gravity=“center”

android:layout_weight=“1”

android:layout_width=“match_parent”

android:layout_height=“match_parent”>

android:src=“@drawable/telephone”

android:layout_width=“wrap_content”

android:layout_height=“match_parent” />

android:gravity=“center”

android:layout_weight=“1”

android:layout_width=“match_parent”

android:layout_height=“match_parent”>

android:src=“@drawable/sms”

android:layout_width=“wrap_content”

android:layout_height=“match_parent” />

android:gravity=“center”

android:layout_weight=“1”

android:layout_width=“match_parent”

android:layout_height=“match_parent”>

android:src=“@drawable/collect”

android:layout_width=“wrap_content”

android:layout_height=“match_parent” />

效果就这样:

5.个人资料界面

用法也很简单,我们在布局里面嵌套一个PullToZoomScrollViewEx,而布局的head,content,footer都可以自定义,然后引用进来就可以了。

PullToZoomScrollViewEx scrollView =(PullToZoomScrollViewEx)findViewById(R.id.my_pull_scoll);

headView = LayoutInflater.from(this).inflate(R.layout.profile_head_view, null, false);

zoomView = LayoutInflater.from(this).inflate(R.layout.profile_zoom_view, null, false);

contentView = LayoutInflater.from(this).inflate(R.layout.profile_contect_view, null, false);

scrollView.setHeaderView(headView);

scrollView.setZoomView(zoomView);

scrollView.setScrollContentView(contentView);

第三篇:如何选择一款车载冰箱

如何选择一款车载冰箱

由于现在科学技术的有限,车载冰箱的设计还不是很完善,最突出得一点就是噪音比较大。当然,这都是相对而言的,由于车内封闭条件比较好,就会感觉车载冰箱的外部噪音比较大。但是为了最大限度的减小噪音还需要我们了解一些牌子产品的性能特点,让我们的选择更加的民智。

既然是做出最佳的选择,我们必须要选择大品牌的车载冰箱,像美固车载冰箱就是很好的选择。美固作为世界车载冰箱品牌的领导者,其拥有绝对领先的技术支持,优良好的管理团队,产品一直以来受到全球消费者很好的评价。

美固车载冰箱两大优势就是外观设计精美,内部噪音较小,这很大程度上满足了绝大多数人群的需要。对于选择一款优秀的车载冰箱最重要的一点,就是要抓住该产品特有的优势特点是否满足自己的需要。

对于如何选择一款优秀的车载冰箱,在以后我还会把各大品牌小冰箱的优缺点总结出来,分析各种类型小型冰箱的消费评价,来给大家推荐出最能满足大家需求的车载冰箱。

第四篇:幼儿园app改变妈妈的选择

幼儿园APP改变妈妈的选择

如今,越来越多的幼儿园开始使用一种家园宝APP,这种家园互动的手机软件,在一定程度上改变了家长对校园生活的初始看法,而让家长们满意的是,有了家园宝APP的提醒,和孩子的交流也有针对性了,“我会根据老师发的照片,还原孩子在幼儿园的场景,孩子贪玩,很多知识一过就忘记了,如果不提醒不会记得起来。而适当地提醒并还原场景,这比单纯地问孩子今天在幼儿园开不开心有效得多。”小班的彤彤的妈妈杨丹说。

南师附小幼儿园小二班班主任刘佳也表示,有了家园宝APP应用后,对于老师和家长的互动帮助很大,老师会把孩子到校签到以后和校车路上的情况发到家园宝APP里,家长通过他的手机端口看到后会第一时间接送孩子,孩子入园后,老师就会更有针对性地对孩子进行教育,并让他们做一些能开发智力的游戏。南师附小的APP应用不仅方便了老师和家长之间的群体沟通和单独沟通,家长之间也有了更多的互动和交流。小一班晨晨也是今年的新生,妈妈陈昕琳很担心孩子不适应,她把自己的不安及时反馈给老师,然后老师根据孩子家长的担心,针对性的发送一些孩子的照片,视频,来抚慰家长。

“我和先生都要上班,孩子的接送主要靠老人或是阿姨,有了这个应用后,除了看到孩子在幼儿园的成长外,还能及时接送孩子上下课。” 陈昕琳说不少家长表示,现在关心孩子,不仅是能不能吃饱穿暖,更关心如何科学育儿,因此对于家校互动的需求更为迫切。而家园宝APP新增的育英知识模块无疑给了家长一个很好的途径,对于幼儿园不计成本打造沟通的平台的这种行为,作为家长很感动。

“没有把钱花在华而不实的地方,比如太漂亮的校服、很贵的硬件投入,我们家长需要的是真真实实地看到孩子在幼儿园的表现,希望看到老师的细致认真。而这一切,幼儿园都为我们想得很周到。”孩子家长会心的说。

第五篇:如何设计一款让大家上瘾的APP

如何设计一款让大家上瘾的APP 202_-06-20 10:32 佚名 cocoachina 字号:T | T

一个 App 不论设计得多么高雅、推广得多么广泛,如果没有任何人愿意下载,就等同于不曾存在。所以,要如何设计产品与 App,让使用者愿意使用、参与其中呢?

AD: WOT2014:用户标签系统与用户数据化运营培训专场

51CTO主办WOT全球软件技术峰会直减百元优惠活动 抢票进行中!

本文作者为 Nir Eyal,内容节录自 Michael Levin 的新书《Designing Multi-Device Experiences》。同时 Nir Eyal 也是书籍《Hooked: A Guide to Building Habit Forming Products》与部落格 NirAndFar.com 的作者。他说,在数位时代有个古老的哲学问题值得拿出来套用一下:

“如果一个 App 失败了,在 App Store 中完全没有人下载,会对什么事造成影响呢?”

比起古老的哲学问题,这个问题的答案简单多了。答案是 NO!不会有任何的影响。一个 App 不论设计得多么高雅、推广得多么广泛,如果没有任何人愿意下载,就等同于不曾存在。

所以,要如何设计产品与 App,让使用者愿意使用、参与其中呢?

答案是习惯

首先你必须了解到并非所有产品都可以成为使用者的习惯。长久以来许多企业透过电子邮件、SEO、广告等其他方式来增加流量或造访率。但是,如果要让使用者不经过任何的广告推销而「自发性」地再次造访成为回头访客,就必须让使用者形成一种习惯。而现今多设备(multi-device)的世界可以让使用者频繁地接触到你的产品与 App,进而较快地在使用者心中养成身后的习惯与用户参与度。

透过研究,我发现能够养成使用者习惯的产品都具有一套模式,我将此称为圈套模式(Hook model)加上底下四个阶段:触发(Trigger)、行动(Action)、奖励(Reward)、投资(Investment)。这四个阶段因素存 在于任何生活中习以为常、不加思索便使用的产品或 App 中。

触发(Trigger)

触发可以分为两种:外部触发以及内部触发。外部触发就像是 App 的推播通知,而内部触发就像是你内心的渴望。例如当你没事做的时候,就会打开 Facebook 或是 ESPN 频道。

而产品设计师应该要设法了解用户的内部触发事件,从而打造产品来满足这些需求。举个例子来说,应该要能够填满下面的格子:

用户 ____ 的时候,他们都会使用我的 App 或产品。而空白处就是你要下功夫的内部触发事件。

举个例子来说,使用者都想知道自己运动的努力是有成效的,便会试着使用 Nike 透过数字化记录运动过程的 App。久而久之使用者将公司的品牌与生活中的特定时刻结合在一起,每一次运动的开始,Nike 的 App 都在慢慢地制约用户。

行动(Action)

如果使用者可以轻松地使用你的产品,对于培养习惯也有相当大的帮助。产品、App 设计得越复杂,都会降低使用者的习惯养成。试着减少不必要的登录过程、优化 UI 与使用者经验,让使用者可以更简单的参与其中。

你应该无法想像用一个 App 还要拿出说明书的情景吧。

奖励(Reward)

奖励意指使用者的内部触发获得了满足。如果使用者的内部触发是为了解闷,开心的心情就是他的奖励;如果是为了好奇心,那他就希望获得期望中的答案。

奖励用户获得他想要的。在这部分很多产品都会设计的具有可变性以及惊喜的因素,这将让产品变得更有趣并吸引用户参与。例如神魔之塔、龙族拼图充满变数的抽奖,正因这种抽奖充满了不确定与惊喜的因素,多少人砸了大量的金钱与时间在这上面。

投资(Investment)

最后,要让使用者持续使用某项产品的因素之一,就是投资感。花了两、三百天玩游戏获得的存档;或是已经累积了 500 公里跑步记录的 App,这些有价值的内容都让使用者愿意持续投资,进而养成习惯。

随着用得越久,内容越显得有价值,使用者就越离不开。

小王子教我的设计理念?

还记得小王子的狐狸吗?透过每天固定的见面时间,慢慢佔据对方心中的一小块位子,其实这也跟 Nir Eyal 的圈套模式有异曲同工之妙。重点就在如何有效地制约你的目标,你的目标可以是全世界的使用者,或是预先设定好的目标用户,甚至也可以是想要追的女孩子。

我想在台湾目前做得最成功的,大概就是 Facebook 吧。有多少人像是作业员一样,每天以打开 Facebook 为己任、觉得只要五分钟没看 Facebook 就觉得浑身不对劲。

养成目标的习惯,就是最重要的原则。虽然这样讲起来有点笼统,不过有一天当使用者完全被制约,用作业员的精神每天使用你的产品时,你就成功了。

来源:优设网

【编辑推荐】

1.开发者如何应对APP臃肿化 2.移动应用新趋势:离线WebApp 3.移动WebApp开发必备知识

4.App推广血泪史:来看看各种推广手段的真实效果

幼儿园如何选择一款自己的APP?5篇
TOP