自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(80)
  • 资源 (2)
  • 收藏
  • 关注

原创 Android Studio开发常见问题及解决办法

Android 4.x中 multidex相关问题在android 4.x以上,遇到64K问题通常是要添加依赖:com.android.support:multidex:1.0.1并且multiDexEnabled设置为true defaultConfig { multiDexEnabled true }不过在4.x的手机上仅仅添加这些是回报如下错误...

2018-04-18 15:30:45 1328

原创 产品思维的《打胜仗》

本文以产品思维的角度,对《打胜仗》进行整理和总结。并通过数据分析的方式,对阅读效率进行复盘。笔记目录竞争与竞合确定性和不确定性生于忧患死于安乐做正确的事内卷和反内卷之前我一直觉得自己读书慢,读完一本可能过一阵就忘了,等于白看。今年通过数据分析的方式整理了最近读的2本一本是米哈里·契克森米哈赖的《心流》,一本是这本《打胜仗》。具体的数据分析方法见第1节(竞争与竞合)《打胜仗》主要作者是研究军事和企业的两栖作家。对军事战争和商业竞争的规律进行了归纳和总结。提炼出了战场和商场的共同目标:打胜仗

2022-04-10 14:51:04 605

原创 关于流程图的场景提炼,这一次终于说清楚业务流程图、功能流程图、页面流程图了

前言做产品的初期踩过不少坑,流程图的坑就是其中一个。在具体落地到文档时用野生小白产品经理的方法就是想到什么就做什么,最终能产出内容就行了。当业务越来越复杂,各分支业务耦合越来越高的时候,就需要一个逻辑清晰、流程清晰、角色清晰的各类流程图。而提炼需求输出出来内容是产品经理核心能力之一提炼力的体现。这次就总结提炼,在工作中常用的流程图使用场景以及各流程图的应用。目录五层法思考产品启动到落地中的流程图的地位实际工作场景中流程图的意义业务流程图、功能流程图、页面流程图的使用场景和作用归纳总结五

2021-03-07 16:50:47 4569

原创 用户体验地图案例:走访大众点评成都范围烤鸭评价最高的餐厅

前言一款成功的的产品不只是在功能层面上能够满足用户的需求,往往用户体验上也下足了功夫。尤其是在红海的toC产品,用户体验更是尤为重要。用户体验地图作为常用的用研方法论,从用户的视角出发,描述用户在使用产品过程中的标志体验。本文以在点评网成都烤鸭第一名(大鸭梨)就餐为案例绘制用户体验地图,并分析用户体验地图能给我们带来什么。用户体验地图是什么?他是针对用户如何通过一种或多种产品/服务达到目的,将用户整个端对端的体验过程可视化处理的一种工具,从更广泛的角度更加定性定量地理解用户的行为。通常用于产品的全周.

2020-12-03 00:54:31 825

原创 行业研究的结构化分析方法:【PEST分析】实战案例

前言了解一个行业,不只是作为职业方向的一个选择,更是对这个社会的了解,能够有更长远的职业规划。在当前这个瞬息万变的时代,去了解不同行业现状、行业玩家和行业赛道有利于产品经理做出深度思考,并反馈到产品规划上。对于新入行的产品来说,通过行业研究可以了解当前这个行业规模,这个行业适不适合长远发展。因为,选择一个行业比在一个行业内努力重要。行业研究是什么行业研究是指以“产业”为研究对象,研究产业内部各企业间相互作用关系、产业本身发展、产业间互动联系以及空间区域中的分布等。目前,产业研究主要集中于细分市场研

2020-10-14 01:04:14 5842

原创 需求优先级排序法:ICE排序方法实战案例

前言需求优先级排序的方法–ICE排序,更多地适用于C端已经上线的成熟产品。通过ICE产品可以有理有据的明确迭代优先级。毕竟开发资源是有限的,要用最合理的方式进行功能的迭代。本文主要说明ICE方法基本概念,并通过上文iOS游戏免费榜第一名【网吧模拟器】如何提升留存率的HMW案例拆解总结的功能点进行ICE排序。什么是ICE方法?所谓的ICE法就是,Impact 影响范围、Confidence 自信程度、Ease 实现难易的简称。详细说明:Impact 影响范围影响范围指的是这个功能上线后有多少用

2020-10-08 00:52:57 2798

原创 HMW案例拆解:iOS游戏免费榜第一名【网吧模拟器】如何提升留存率?

前言本篇内容结合产品工作的方法论:HMW方法,分析如何提高【网吧模拟器】的留存率问题。为什么是留存率不是精确的数据,因为我也不知道留存率是多少。。 这里很想说7日留存率问题,因为目测7日留存不好,为啥呢?因为本人玩了2天(15个小时左右)也没啥可玩的内容随时卸载的心态。不过介于游戏上线之出,还是要给游戏团队更多的容忍度哈哈什么是HMW方法?HMW:How might we,我们可以怎样?该方法主要适用于头脑风暴前去寻找解决问题的方向,扩展思路。一般在什么时候用?常用于在确定了某个场景的问题后去分

2020-10-07 01:22:02 1354 2

原创 王者荣耀历史重要更新时间轴(2015年10月-2020年10月)

前言出于对王者荣耀产品、运营的思路好奇,特整理了此历史更新时间轴。可供喜欢王者荣耀的玩家同学、扩展游戏运营思路的运营同学、学习产品迭代思路的产品同学学习。本文也作为日后更新产品经理日常工作使用的方法论分享文章的素材内容,日后文章会提到,欢迎大家交流学习。本时间轴内容包括但不限于:新英雄新皮肤新功能新版本新赛季新版本名称新的各种模式新的各种活动发布相关更新的描述图片宣传海报内容来源:官网的发布咨询、其他三方网站的历史留档。整理不易,思维脑图整理之后178MB…时间轴

2020-10-06 19:50:15 1083

原创 产品入门:从需求分析到需求拆解

目录什么是产品什么是需求产品和需求的关系如何做需求分析4.1 从底层挖掘需求4.2 如何区分需求以及伪需求4.3 需求的拆解和挖掘KANO模型-确定什么需求有价值总结前言产品经理日常工作大多时候是需求的分析、需求的处理以及需求的挖掘。今天我们通过产品看需求,通过拆解方法去拆解相关的需求从而挖掘需求的本质。在说到需求之前,我们要先聊聊什么是产品。什么是产品?产品是指做为商品提供给市场 ,被人们使用和消费,并能满足人们某种需求的任何东西,包括有形的物品、无形的服务、组织、观念或

2020-09-13 20:50:05 1826

原创 axios 小白从安装到基础的使用与封装

一、请求类型get、delete方式类似都可以用params请求,delete可以在请求体中请求,post、put、patch类似都是使用请求体请求并且可以有json/form-data两种方式GETget请求的两种写法 (使用config 将参数放在params中) axios.get('/url', { params: { id: 12 } ...

2020-04-11 20:17:11 537

原创 Vue2.5 入门基础教程

1.前言本篇文章是曾任去哪网的高级前端工程师DellLee在慕课网发布的教学课程《Vue2.5入门》而总结的笔记。原视频地址:https://www.imooc.com/learn/980本笔记适用于新手学习vue框架进行前端的开发。2.基础语法2.1 模板挂载点实例之间的关系<!-- div是挂载点 el属性后面对应的标签--><div id="root">...

2019-01-06 20:37:09 742

原创 Android注解篇-各类型注解的意义以及使用场景

前言注解(Annotation),是源码中特殊的语法元数据,类、方法、变量、参数都可以被注解。利用注解可以标记源码以便编译器为源码生成文档和检查代码,也可以让编译器和注解处理器在编译时根据注解自动生成代码,甚至可以保留到运行时以便改变运行时的行为。 内置注解@Override 注解用来表明该方法是重写父类方法,编译器会负责检查该方法与父类方法的声明是否一致。@Deprecate...

2018-04-20 16:26:32 2155

原创 GSON解析使用技巧高级应用

记得有次面试,面试官问了这么一个问题。如果服务器端返回的某个字段有的时候可能是一个int 有的时候是个String 有的时候是个数组怎么处理。(当时一脸懵逼)就说改啊~ 好吧,你回去等通知吧。。GG..在日常开发中,服务器端有可能将一个字段返回多种内容,有可能是在不同环境下出现的这种情况,也有可能设定的为这种情况要怎么处理呢。其实Gson的一个用法就可以满足这种需求,下面我们看一下要处理的...

2018-04-10 10:30:32 803 1

原创 Android Studio 使用技巧

Getter and Setter判断null的模板方法此方法是修改Android 的模板方法来判断Bean类中服务器返回的内容是否为Null. 由于在不同的环境下,服务器返回的内容通常是String int等,但是不排除可能出现null的情况,通常我们都是每个地方都处理是否为Null。 在这里有个更快捷的方法,直接对Bean类判断是否为null. 不仅可以判断String 以及标准数据类...

2018-04-08 15:40:40 327

原创 Java Server Pages---初识JSP

初识JSP在互联网时代,知识是不断获取的,作者本人接下来要对后台的开发知识着手慢慢的积累,接下来从JSP入手。JSP内置对象out内置对象如果所示常用的内置对象示例: <form action="提交给action处理" name="名字" method="get/post方式">request对象客户端的请求信息被封装在request对...

2018-02-20 10:10:56 324

原创 View的测量 绘制

绘制包括了3个主要步骤1.Mesure 2.Layout 3.DrawMesureSpec   32位的整型值  他的高2位表示测量模式 SpecMode  低30位表示某种测量模式下的规格大小SpecSize三种测量模式UNSPECIFIED 不指定测量模式   很少使用EXACTLY 精确测量模式AT_MOST 最大值模式@Override protected void onMeasu...

2018-02-08 11:45:33 423

原创 View的工作原理

此篇是根据Android开发艺术探索做的一个知识梳理,来温习一遍View的工作原理 View的工作流程view的工作流程主要为三大流程: 1.measure 2.layout 3.draw1.1 View的Measure过程View的Measure过程由其measure方法来完成,此方法会调用View的onMeasure方法,因此只需要研究onMeasure实现即可。...

2018-01-27 00:11:38 371

原创 HTML+CSS基础(CSS篇下)

CSS格式化排版===##1、字体我们可以使用css样式为网页中的文字设置字体、字号、颜色等样式属性。下面我们来看一个例子,下面代码实现:为网页中的文字设置字体为宋体。body{font-family:"宋体";}这里注意不要设置不常用的字体,因为如果用户本地电脑上如果没有安装你设置的字体,就会显示浏览器默认的字体。(因为用户是否可以看到你设置的字体样式取决于用户本地电脑上是否安装你设置的字

2017-09-03 23:33:33 587

原创 HTML+CSS基础(CSS篇上)

开始学习CSS,为网页添加样式1、认识CSS样式CSS全称为“层叠样式表 (Cascading Style Sheets)”,它主要是用于定义HTML内容在浏览器内的显示样式,如文字大小、颜色、字体加粗等。 如下列代码:p{ font-size:12px; color:red; font-weight:bold;}使用CSS样式的一个好处是通过定义某个

2017-09-03 23:33:11 572

原创 Android Scroll分析

前言本篇谈论Android Scroll的应用以及如何在应用中添加滑动效果。 你可以学到: - 发生滑动效果的原因 - 如何处理、实现滑动效果1.1 滑动是如何产生的滑动一个View的本质其实就是移动一个View,改变其当钱所在的位置,他的原理和动画效果十分的相似,就是通过不断的改变View的坐标来实现这一效果,动态且不断的改变View的坐标,从而实现View跟随用户触摸滑动而滑动 但是在讲

2017-09-03 23:32:24 284

原创 HTML+CSS基础(HTML篇)

1、了解HTML、CSS、JavaScript学习web前端开发基础技术需要掌握:HTML、CSS、JavaScript语言。下面我们就来了解下这三门技术都是用来实现什么的:HTML是网页内容的载体。内容就是网页制作者放在页面上想要让用户浏览的信息,可以包含文字、图片、视频等。CSS样式是表现。就像网页的外衣。比如,标题字体、颜色变化,或为标题加入背景图片、边框等。所有这些用来改变内容...

2017-09-01 23:35:23 1788

原创 Android控件架构与自定义控件

引言最近在开发的路上越走越远了,每天在看各位大神公众号更新内容是自定义View的时候,一些小的内容有点模具,决定回过头来温习一下过往的内容。此篇也是根据android群英传来总结的一篇文章。1 Android控件架构Android的每个控件都是占一块矩形的区域,大致的分两类,继承View和ViewGroup,ViewGroup相当于一个容器,他可以管理多个字View,整个界面上的控...

2017-08-30 23:07:18 851

原创 阿里开源UItraViewPage源码分析

简介UltraViewPager是一个封装多种特性的ViewPager,主要是为多页面切换场景提供统一解决方案。主要功能支持横向滑动/纵向滑动支持一屏内显示多页支持循环滚动支持定时滚动,计时器使用Handler实现支持设置ViewPager的最大宽高setRatio按比例显示UltraviewPager内置indicator,只需简单设置几个属性就可以完成展示,支持圆点和Icon内置

2017-08-05 17:14:30 1152

原创 算法导论(学习笔记) 第一章 算法在计算中的作用

前一阵买了算法导论的书一直没有开始看,今天开始准备研究研究,增进一下自己的基本功。 每看完一个系列都会来CSDN和我的简书中更新我的学习笔记,喜欢的朋友们可以关注我一下~ 简书地址: http://www.jianshu.com/u/1973198883371.1 算法非形式地说,算法就是任何良定义的计算过程,该过程取某个值或值的集合作为输入并产生某个值或值的集合作为输出。...

2017-07-02 16:46:08 1286

原创 Android View---自定义View

重要的回调方法首先,我们应该了解一下比较重要的回调方法:onFinishInflate() 从XML加载组件后回调onSizeChanged() 组件大小改变后回调onMeasure(int widthMeasureSpec, int heightMeasureSpec)回调该方法进行测量onLayout(boolean changed, int left, int ...

2017-06-01 22:00:37 321

转载 友盟第三方平台操作流程

获取SDK下载SDK操作流程下载SDK最新版 如下图所示: SDK组件说明根据需要,选择自己需要的平台、精简版/完整版Demo工程包含了源码及Apk文件,Apk可以直接安装,用于体验分享、登录功能SDK文件目录介绍main – 核心库 umeng_social_api.jarumeng_social_net.jarumeng_social_tool.jarplatforms – 分享平台库 Q

2017-05-12 12:07:34 2875

原创 Android Studio启动异常报错修复

Internal进来找问题的朋友有福利了,保证帮你1分钟解决问题。今天启动了AS,然后报了如下的错误,想想是因为昨天非正常关机导致的,然后搜了百度等等网站,都没有用。 最后翻墙GOOGLE后,发现了原因。解决办法简单粗暴: 删除 我的文档中 .AndroidStudioX.X 文件重新配置即可。Internal Error. Please report to https://code.google.co

2017-05-06 10:36:08 6116 5

转载 Android双缓冲技术分析总结

原文: http://www.jianshu.com/p/efc0bebfd22eAndroid绘图中的双缓冲再绘图中我们常用到两个重要的工具。一个是Canvas(画布),一个是Paint(画笔)。 Canvas提供画各种图形的方法,如画圆(drawCircle),画矩形(drawRect)等等。 Paint用来设置画笔的样式,比如笔的粗细,颜色等。 并且每个Canvas内部持有一个Bitm

2017-05-04 13:46:52 742

原创 MySQL数据库(三)---约束、修改数据表

本篇的思维导图如下: 外键约束 FOREIGN KEY保持数据的一致性和完整性 实现一对多的关系要求父表和字表必须使用相同的存储引擎,并且禁止使用临时表数据表的存储引擎只能为InnoDB外键列和参照列必须具有相似的数据类型。其中数字的长度或是否有符号位必须相同;而字符的长度则可以不同。外键列和参照列必须创建索引,如果外键列不存在索引的话,MySQL将自动创建索引。编辑数据表的默认存储

2017-03-22 10:26:29 725

原创 Android设计模式---建造者模式(Builder)

Bulider模式介绍:Builder模式是一步一步创建一个复杂的对象的创建型模式,他允许用户在不知道内部构建细节的情况下,可以更精确的控制对象的构造流程。该模式是为了将构建复杂对象的过程和它的部件解耦,是的构建过程和部件的表示隔离开来。 就好比装配一个汽车,需要轮胎、发动机、方向盘等等。就可以使用Builder莫事将部件和组装过程分离,使得构建过程和部件都可以自由扩展,两者之间的耦合也

2017-03-21 15:51:03 276

原创 MySQL数据库(二)---数据类型、数据表、约束

数据类型数据类型是指列、存储过程参数、表达式和局部变量的数据特征,它决定了数据的存储格式,代表了不同的信息类型。整形TINYINTSMALLINT MEDIUMINT INT BIGINT浮点型M是数字总位数 D是小数点后面的位数 M>=DFLOAT[(M,D)] 单精度浮点数 浮点精确到大约7位小数 DOUBLE[(M,D)] 双精度浮点数日期和时间型YEAR 1

2017-03-21 09:27:24 902

原创 MySQL数据库(一)---安装、配置、使用

推荐一篇文章是关于Linux下my.ini修改编码的: http://www.nightsong.cc/index.php/post/140.html创建数据库 SHOW DATABASES;查看当前创建的数据库 CREATE DATABASE|SCHEMA db_name;创建数据库SHOW WARNINGS查看错误信息SHOW CREATE DATABASE t1;查看数据库编码方式CRE

2017-03-20 15:55:45 478 2

原创 Android---消息机制总结

消息机制是什么?android的消息机制主要是指Handler的运行机制。handler 是什么?我们说,handler是android给我们提供用来更新UI的一套机制,也是一套消息的处理机制,可以通过他来发消息 也可以用他来处理消息为什么使用handlerandroid设计的时候就封装了一套这样的消息创建 传递 处理机制 否则就会抛出异常的。主要原因就是为了解决在子线程中无

2017-03-17 16:40:08 433

原创 Android网络请求框架----okHttp3

okhttp GitHub地址: https://github.com/square/okhttp 最新的OkHttp依赖可以到官方的GitHub上去添加。目前官方的依赖地址为: compile ‘com.squareup.okhttp3:okhttp:3.6.0’Get请求直接进入主题: // 1、拿到OKHttpClient对象 OkHttpClient ok

2017-03-15 16:48:48 849

原创 Android开发系列( 二)----BaseActivity

在实际的Android产品研发中,一般的我们在写Activity的时候都会继承于一个基类Activity,该Activity是所有的Activity的基类。在该基类中我们主要用于重写一些共有的逻辑。好处是显而易见的对于一些Activity的共有逻辑我们不必要在每个Activity中都重新写一遍,只需要在基类Activity中写一遍就行。1.定义一个BaseActivity通常我们把基类定义成Base

2017-03-15 16:37:39 335

原创 Android开发系列(一)----开发规范

1、开发规范的作用减少维护花费提高可读性加快工作交接减少名字增生降低缺陷引入的机会2、命名规范2.1.1常量命名规范:通常都遵循望文知意的原则,常量通常储存经常使用且变化不多得数据。2.1.2规则: 1. 全部为大写字母 2. 中间以“_”连接 3. 望文知意2.1.3例子:比如写一个游戏关卡的关数: static final int MY_GAME_LEVEL=1;

2017-03-15 10:49:06 374

原创 LayoutTransition介绍

首先看一个效果图: XML布局如下:<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:la

2017-03-13 10:46:12 1395

原创 仿微博发现界面

仿微博发现界面先上效果图: public class MainActivity extends AppCompatActivity { //fragment的适配器 private MainTabFragmentAdapter mainTabFragmentAdapter; //viewpager private ViewPager mViewPager; //左

2017-03-09 17:36:00 803

原创 Android-IPC之三 Android中的IPC方式

方式1—Bundle使用Bundle四大苏建中的三大组件都支持在Intent中传递Bundle数据,Bundle实现了Parcelable接口,可以方便的在不同进程间传输.方式2—文件共享通过流来读取数据,Linux系统使得并发读/写文件可以没有限制的进行. 缺点就是如果并发读写了,内容很可能就不是最新的了,因此避免并发的情况.方式3—使用MessengerMessenger是一种轻量级的IPC方

2017-02-25 17:19:31 311

原创 Activity常用的几个标志位总结:

除了XML文件中刻意设置启动模式.在JAVA代码中也可以通过标记位来设制启动模式和影响Activity的运行状态 //设置标记为过程 Intent intent=new Intent(); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);常用标志位Intent.FLAG_ACTIVITY_NEW_TASK

2017-02-25 11:47:58 967

gradle-5.1.1.zip

gradle-5.1.1-all,用于下载网络卡时需要gradle文件进行配置。

2019-07-05

java_jdk-8u161-windows-x64(jdk官方版本1.8)

官方下载的java jdk1.8官方版本 在官网加载速度很慢,CSDN下载速度很快。

2018-03-27

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除