- 博客(59)
- 资源 (3)
- 收藏
- 关注
原创 Gradle task示例
Internal@Internal@OverridedoLast {doLast {msg = "ok"age=21输出如下task 1task 2。
2023-07-24 14:20:01 179
转载 进程和应用生命周期
进程和应用生命周期 在大多数情况下,每个 Android 应用都在各自的 Linux 进程中运行。当需要运行应用的一些代码时,系统会为应用创建此进程,并使其保持运行,直到不再需要它且系统需要回收其内存以供其他应用使用。应用进程的生命周期并不由应用本身直接控制,而是由系统综合多种因素来确定的,比如系统所知道的正在运行的应用部分、这些内容对用户的重要程度,以及系统中可用的总内存量。这是 Android 非常独特的一个基本功能。应用开发者必须了解不同的应用组件(特别是 Activity、Service.
2022-04-14 17:15:49 247
原创 新建flutter项目 could not find an option named “platforms“
新建flutter项目时提示这个错误。flutter doctor发现有flutter和dart plugin未安装提示,但老项目运行正常,as中flutter等插件确定是已经安装过的。但是flutter doctor依然提示未安装。中间更新过android-studio-dir,但感觉不是问题解决的根本原因。最终能过flutter upgrade --force成功解决问题,能够新建flutter项目。这个命令需要多试几次,对网络质量要求应该比较高,试了三次才成功执行完。...
2021-09-30 17:18:51 1535
原创 ComponentCallbacks与ComponentCallbacks2
/** * The set of callback APIs that are common to all application components * ({@link android.app.Activity}, {@link android.app.Service}, * {@link ContentProvider}, and {@link android.app.Application}). */application应用组件回调api集合接口;ComponentCallbac.
2021-06-24 15:37:04 293
转载 android 10分区存储
看了两个博客写的都不是很清楚,拿一下官方到这,定义还是官方的清晰:管理分区外部存储访问为了让用户更好地管理自己的文件并减少混乱,以 Android10(API 级别 29)及更高版本为目标平台的应用在默认情况下被赋予了对外部存储设备的分区访问权限(即分区存储)。此类应用只能看到本应用专有的目录(通过Context.getExternalFilesDir()访问)以及特定类型的媒体。除非您的应用需要访问存放在应用的专有目录以及MediaStore之外的文件,否则最好使用分区存储。下表总结...
2020-09-09 12:15:26 1875 1
原创 Running “flutter pub get“ in flutter_app...或another command ...lock
个人认为问题根源还是墙的问题,最终是用了国内镜像解决的,虽然使用了在此之前使用了vpn但是效果真心不好,可能还是太慢了.在mac中open .bash_profile,将如下两条变量添加进去并保存.之后将flutter目录中bin/lockfile文件删除并随后重启android studio.之后应该就可以正常使用pub get等命令了.以下内容引自flutter供参考:Using Flutter in ChinaThe Flutter community has made a Sim
2020-08-18 16:46:33 637
原创 flutter安装过程问题自汇总
总结一下安装时候遇到的一些问题:个人感觉需要准备翻墙环境,还有就是一台mac(可以后续做apple端)1.配置好环境变量后第一次使用flutter命令卡死在Building flutter tool...本人解决办法是重启电脑,无效(因为新升级了macos所以想着重启一下可能就好了,主要是升级后系统提出出了一个错误);之后在overstack上看到有人通过关闭wifi后再打开恢复正常的解决办法,本人试了一下没用。最终将打开的vpn关掉,重新打开终端命令执行flutter -h命令,放置一
2020-07-20 15:31:39 221
转载 Failed to download samples index, please check your connection and try again
android studio中查看samplesfile--new--import samples...出现以下问题:问题:解决办法:第一步:翻墙第二步:Configure-> Setting->System Setting->HTTP Proxy->Auto-detect proxy settings最终效果:转自:...
2019-05-06 16:39:12 4389 1
转载 tools命名空间
转载:作者对原文理解比较好,我英文看着太慢,感谢分享。一、tools 命名空间是啥?在哪里有?在Android Studio 中,我们创建一个 xml 布局文件之后,通常在自动生成的代码中,会有一个 tools 命名空间: xmlns:tools="http://schemas.android.com/tools" 。之前一直不知道是干嘛用的,从来没有用过,然后要么手动删除,要么格式化代码...
2019-05-06 14:20:12 619
原创 publishNonDefault true过时
publishNonDefault true该属性现在已过时。> Configure project :Gpu-ImagepublishNonDefault is deprecated and has no effect anymore. All variants are now published.该属性用途:project中的某一library需要根据情况使用其debug...
2019-05-05 14:10:03 6386
转载 升级android studio至3.3.2出现WARNING: API 'variantOutput.getPackageApplication()' is obsolete
Android : Android Studio 更新至gradle 4.10.1后Variants API变化同步警告:WARNING: API 'variantOutput.getPackageApplication()' is obsolete and has been replaced with 'variant.getPackageApplicationProvider()'....
2019-05-05 13:25:11 3284
转载 视频播放的三种方式
在Android中,我们有三种方式来实现视频的播放:1、使用其自带的播放器。指定Action为ACTION_VIEW,Data为Uri,Type为其MIME类型。2、使用VideoView来播放。在布局文件中使用VideoView结合MediaController来实现对其控制。3、使用MediaPlayer类和SurfaceView来实现,这种方式很灵活。1、调用其自带的
2017-05-31 13:06:53 2257
转载 android studio配置kotlin
http://blog.csdn.net/qq_23547831/article/details/52857346登录 | 注册一片枫叶的专栏让坚持成为一种习惯。目录视图摘要视图订阅【活动】2017 CSDN博客专栏评选 【5月书讯】
2017-05-19 10:13:42 1213
转载 android生成aar包及引用aar包
这篇文章主要介绍了Android项目中引用本地aar文件的方法,本文讲解了什么是aar文件、导出aar文件方法、引用本地的aar文件方法等内容,需要的朋友可以参考下随着项目越来越多,代码的复用就变得异常重要,这时候就要进行模块化编程,就是把一些通用的组件或者类库做成单独的模块,其他项目直接进行引用就好。针对Android开发最常见的就是Android Library,在Gradle出现
2017-04-21 15:16:14 2489
转载 总结android中的.gradle文件写法及含义
1.项目根目录下的build.gradle文件新建android 项目一般如下:// Top-level build file where you can add configuration options common to all sub-projects/modules.buildscript { repositories { jcenter()
2017-04-21 14:43:03 1698
原创 gradle相关错误
最近遇到一系列gradle版本相关的问题,刚开始让我受了很多折磨,后来都 一 一找到解决办法及一些原因:一。查看Android Studio的Gradle、Gradle插件的版本点击菜单“File”-“Project Structure...”,如图在弹出的Project Structure对话框中的左侧,选择Project,如图:
2017-04-16 21:12:08 672
转载 @interface 注解详解
http://www.cnblogs.com/xdp-gacl/p/3622275.html孤傲苍狼只为成功找方法,不为失败找借口!Java基础加强总结(一)——注解(Annotation) 一、认识注解 注解(Annotation)很重要,未来的开发模式都是基于注解的,JPA是基于注解的,Spring2.5以上都是基于注解的,Hibern
2017-04-15 19:26:50 21128 2
原创 SharedPreferences.Editor.clear()方法
SharedPreferences sd = this.getSharedPreferences("MainActivity", Context.MODE_PRIVATE);SharedPreferences.Editor editor = sd.edit();editor.putString("name", "dongbaoming");editor.putString("age", "2
2017-03-28 16:00:56 10003 2
转载 CPU与GPU的区别
文章转载自http://www.cnblogs.com/biglucky/p/4223565.htmlCPU和GPU之所以大不相同,是由于其设计目标的不同,它们分别针对了两种不同的应用场景。CPU需要很强的通用性来处理各种不同的数据类型,同时又要逻辑判断又会引入大量的分支跳转和中断的处理。这些都使得CPU的内部结构异常复杂。而GPU面对的则是类型高度统一的、相互无依赖的大规模数据和
2017-03-28 09:53:27 379
转载 Https协议完全理解
领导分享了一篇文章当然要认真看一下,所以就知道了https协议的工作完整流程:个人理解大概流程就是,先用非对称加密将最终要用到的对称加密的加密机制从服务器传给客户端。详细流程:客户端操作系统或浏览器中自带有各权威机构的公钥。 各公司向权威机构申请证书,证书中含有用权威机构私钥加密过的后续要用到的非对称加密公钥。客户端用自带的权威机构公钥可以将这个后续要用的非对称...
2017-03-14 15:04:52 3555
原创 git初识
以前没有用过git来管理项目,跟svn和cvs还是有一些区别的。个人理解简要笔记:需要安装git客户端exe.安装完成后默认已经将git相关命令添加到pc(我用的windows)的环境变量里。然后需要配置一下git本地的变量:打开git bash命令窗口,配置用户名和邮箱,这两个主要是为了以后提交管管理代码加日志标记用的,没有别的更大的用处。一般项目已经存在于线上服务器上,换新
2017-03-10 15:58:22 587
转载 计算机中二进制数据的编码方式,整理了两篇他人的博客
二进制的三种编码:原码,反码,补码以前不是很理解,最近有时间进行了补充学习,通过两篇渐进关系的文章让我清晰了很多:第一篇:一. 机器数和真值在学习原码, 反码和补码之前, 需要先了解机器数和真值的概念.1、机器数一个数在计算机中的二进制表示形式, 叫做这个数的机器数。机器数是带符号的,在计算机用一个数的最高位存放符号, 正数为0, 负数为1.比如,十进制中的数
2017-03-03 16:44:55 21857 2
原创 RecycleView设置点击的两种方式:adapter中的onBindViewHolder(VH,int)方法中进行;实现RecyclerView的addonItemTouchListerner()
第一种方式:就是当布局需点击事件的控件较少时class HomeAdapter extends RecyclerView.Adapter{//... public interface OnItemClickLitener { void onItemClick(View view, int position); void onItemLong
2017-03-01 17:14:20 11616
原创 getIntrinsicWidth()和getIntrinsicHeight()方法理解误区
Drawable类中有一对方法getIntrinsicWidth()和getIntrinsicHeight():顾名思议让我开始觉得它们得到的是drawable图片的原始固有宽高,如果这样理解的话那得到的宽高肯定是drawable本身固有的属性,同一个drawable不会随着硬件软件环境的影响都会保持不变才对。但事实是:我理解错了,相信还有不少经验不够丰富的同学也是这么理解的。正确的理解是
2017-03-01 13:37:43 10983
原创 NestedScrollView使用中遇到的一些问题总结
NestedScrollView可以说就是ScrollView,只不过可以配合Material Design中新控件,实现一些新特性。问题1:NestedScrollView与AppBarLayout配合使用时,NestedScrollView属性必须设置layout_behavior值,这样视图加载出来才会把NestedScrollView部分放在AppBarLayout下面,否则两部分视图
2017-03-01 08:48:41 10468
原创 自定义实现CoordinatorLayout.Behavior
public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_m
2017-02-27 16:04:58 360
转载 使用友盟统计情况下的 多渠道打包配置
以下内容全部转载以便以后查阅使用: 最近不断有朋友向我咨询AndroidStudio多渠道的打包方法,今天整理一下之前积累的打包套路,写一篇文章,手把手的教给大家。 说到多渠道,这里不得不提一下友盟统计,友盟统计是大家日常开发中常用的渠道统计工具,而我们的打包方法就是基于友盟统计实施的。按照友盟官方文档说明,渠道信息通常需要在AndroidManif
2017-02-23 10:30:33 4753 1
转载 Fragment.setArguments()方法向fragment对象传递数据的重要作用
/** * Supply the construction arguments for this fragment. This can only * be called before the fragment has been attached to its activity; that * is, you should call it immediately after construc
2017-01-10 13:36:14 2115
转载 Bundle.setClassLoader()方法解析 BootClassLoader PathClassLoader
bundle经常会用,但是对setClassLoader()方法不是特别的理解,上网查了下也有很多不是很明白的同学,在此借用看到的文章记录一下原因。在开发中可能有时候会遇到用Bundle传递一个Parcelable对象时出现ClassNotFoundException异常,而且这个异常有时候会出现有时候又不会出现,比如你在同一个进程的Activity间传递数据时就不会出现,但是你通过M
2017-01-10 13:18:59 3900 1
原创 FragmentTransaction解析 Fragment Transactions和Activity状态丢失
关于FragmentTransaction以前用到过但是了解不全面,只是会简单使用。今天再次碰到所在在此将它详细记录:通过两篇比较好的文章总结一下,相信看完这两篇文章你暂时的问题都会得到解决,如果还有什么疑问大家可以留言讨论。我转的第一篇文章是作者对别人的文章进一步修改得到的更易懂的作品: 之前在使用Fragment的时候偶尔会有这么一个报错,Can not perform th
2017-01-10 10:45:57 2995
转载 属性动画资料文件如何编写?property-animation资源文件 属性动画如何自定义TypeEvaluator
android动画分为三种:AnimationDrawable(类)逐帧动画;Tween补间动画;property animation属性动画;第一种的类名:AnimationDrawable,在资料文件部分,这种动画也属于Drawable的一种,是Drawable的子类;第二种的类名:Animation,Animation是个抽象类,android提供了几个具体的实现类如Translat
2017-01-09 12:43:35 527
转载 View.bringToFront()方法 ViewGroup.bringChildToFront(View child)将view显示在视图的最顶层
看项目时发现项目中有用到bringChildToFront(View child)方法,于是查了下相关资料,发现类似的方法在View类中也有对应的bringToFront()方法。作用是一样的,都是将处在父控件中的某一子控件显示在父控件的最上层。具体的源码解析可参考一篇博文:最近在项目终于到了View.bringToFront()方法,简单看了下其源码,在这儿总结一下。 bringT
2017-01-09 11:18:11 6840
转载 scrollingCache和animateCache 两个关于View绘制缓存的属性分析
scrollingCache和animateCachescrollingCache是listview这种滚动布局的一个属性,animateCache是viewgroup的一个属性。他们的作用都是控制DrawingCache。他们都可以在xml布局中控制,也可以用代码调用: mylayout.setAnimationCacheEnabled(false); setAni
2017-01-07 12:30:42 3343
转载 drawingcache解析 通过view的绘制缓存得到bitmap,从而实现view内容截图
android为了提高滚动等各方面的绘制速度,可以为每一个view建立一个缓存,使用 View.buildDrawingCache为自己的view建立相应的缓存,这个cache就是一个bitmap对象。利用这个功能可以对整个屏幕视图进行截屏并生成Bitmap,也可以获得指定的view的Bitmap对象。在有的时候还会影响性能,例如如果自己实现一个Gallery效果,可能就会使用到view缓存。an
2017-01-07 12:26:27 11176 2
转载 SparseArray<E>详解 在一些情况下可以代替HashMap提高性能
关于原理及相应方法我借用两篇博客如下:第一篇:最近编程时,发现一个针对HashMap的一个提示:翻译过来就是:用SparseArray来代替会有更好性能。那我们就来看看源码中SparseArray到底做了哪些事情:一、构造从构造方法我们可以看出,它和一般的List一样,可以预先设置容器大小,默认的大小是10:[java] view plain
2017-01-07 12:16:46 866
转载 Webview截屏三种方式
第一种方式通过调用webview.capturePicture(),得到一个picture对象,根据图像的宽和高创建一个Bitmap,再创建一个canvas,绑定bitmap,最后用picture去绘制。//获取Picture对象Picture picture = wv_capture.capturePicture();//得到图片的宽和高(没有reflect图片内容)int wid
2017-01-07 11:52:50 952
原创 android中打开查看pdf文件可用mupdf
项目中用到过mupdf第三方库来开发android应用直接打开pdf文件的功能,为了更多的了解mupdf库上网找资料发现一篇个人文章写的还不错,拿来记录一下:一时兴起因为自己前段时间一直在做故事会的一个客户端,当然是非官方版,主要是由于自己的兴趣所致。以前就挺喜欢看故事会的,所以就希望做一个故事会的客户端,在手机上随时随地地看。因为故事会的官方APP的体验实在是太差了,而且资源还不
2017-01-06 15:36:22 4015 1
原创 UUID介绍以及android中使用
讨论UUID的定义、分类、应用及生成工具。什么是UUID?UUID是Universally Unique Identifier的缩写,它是在一定的范围内(从特定的名字空间到全球)唯一的机器生成的标识符。UUID具有以下涵义:经由一定的算法机器生成为了保证UUID的唯一性,规范定义了包括网卡MAC地址、时间戳、名字空间(Namespace)、随机或伪随机数、时序等元素
2017-01-06 15:15:43 23831 2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人