随笔分类 -  Android开发

Android studio使用gradle动态构建APP(不同的包,不同的icon、label)
摘要:最近有个需求,需要做两个功能相似的APP,大部分代码是一样的,只是界面不一样,以前要维护两套代码,比较麻烦,最近在网上找资料,发现可以用gradle使用同一套代码构建两个APP。下面介绍使用方法: 首先要构建两个APP需要有两个APP图标、APP名字和AndroidManifest.xml。Andr 阅读全文

posted @ 2016-12-16 14:46 屌丝迷途 阅读(1714) 评论(0) 推荐(0) 编辑

Android窗口机制分析与UI管理系统
摘要:类图关系 在看Android的窗口机制之前,先看看其主要的类图关系以及层级之间的依赖与调用关系 1.window在当前的android系统的中的呈现形式是PhoneWindow (frameworks/base/policy/src/com/android/internal/policy/impl/ 阅读全文

posted @ 2016-11-25 10:32 屌丝迷途 阅读(419) 评论(0) 推荐(0) 编辑

Android界面架构(Activity,PhoneWiondow,DecorView)简介
摘要:在一个Android应用程序中,用户界面通过View和ViewGroup对象构建。所有View的子类成为”Widget”,所有ViewGroup的子类成为”Layout”。View和ViewGroup之间采用了组合设计模式。ViewGroup作为布局容器类的最上层,布局容器里面又可以有View和Vi 阅读全文

posted @ 2016-11-25 10:22 屌丝迷途 阅读(2076) 评论(1) 推荐(4) 编辑

Json生成与解析
摘要:JSON常用与服务器进行数据交互,JSON中“{}”表示JSONObject,“[]”表示JSONArray 如下json数据: 生成json数据代码: 解析json数据代码: 阅读全文

posted @ 2016-11-15 18:11 屌丝迷途 阅读(738) 评论(0) 推荐(0) 编辑

有主线程发送message给子线程
摘要:通常我们在处理耗时任务时候都会通过新建线程来处理,当任务处理完后通过Handler将结果发送回主线程。比如下面示例: 那么,我们能不能通过Handler从主线程发送消息给子线程呢?答案是肯定的,需要用到Looper.prepare()和Looper.loop()。如下面的代码: 阅读全文

posted @ 2016-11-14 15:35 屌丝迷途 阅读(945) 评论(0) 推荐(0) 编辑

Looper.prepare()和Looper.loop()
摘要:什么时候需要 Looper Looper用于封装了android线程中的消息循环,默认情况下一个线程是不存在消息循环(message loop)的,需要调用Looper.prepare()来给线程创建一个消息循环,调用Looper.loop()来使消息循环起作用,使用Looper.prepare() 阅读全文

posted @ 2016-11-11 18:05 屌丝迷途 阅读(22766) 评论(0) 推荐(2) 编辑

[转]File Descriptor泄漏导致Crash: Too many open files
摘要:在实际的Android开发过程中,我们遇到了一些奇奇怪怪的Crash,通过sigaction再配合libcorkscrew以及一些第三方的Crash Reporter都捕获不到发生Crash的具体信息,十分头疼。然后我们通过Bugly上报的Java的CallStack观察发现这些Crash发现了一些 阅读全文

posted @ 2016-11-10 15:34 屌丝迷途 阅读(3370) 评论(0) 推荐(0) 编辑

WeakReference在Handler中的应用
摘要:上面这段代码在handler对象创建的时候却会报警告:This Handler class should be static or leaks might occur。意思是:Handler 类应该为static类型,否则可能会造成内存泄漏。 为什么会造成这种情况呢? 这种情况就是由于android 阅读全文

posted @ 2016-11-09 15:13 屌丝迷途 阅读(1501) 评论(0) 推荐(0) 编辑

使用AIDL调用远程服务设置系统时间
摘要:在实际工作中,经常遇到客户需要用代码设置系统时间的需求,但是Android非系统应用是无法设置系统时间的。于是,我设计了一个使用系统签名的时间设置服务,客户通过bind调用服务里的方法就能达到设置时间的目的。 这里用到的技术有: 1、Signapk签名 2、AIDL 3、bind service 将 阅读全文

posted @ 2016-11-07 11:14 屌丝迷途 阅读(716) 评论(0) 推荐(0) 编辑

[转]利用JitPack发布自己项目让别人可以在dependencies中compile的简单方法
摘要:JitPack的地址为:https://jitpack.io/ 发布 使用 点击 Get it. 之后网页就会自动导航到下面那一栏,按照里面的两个顺序依次填写就可以完成。是不是很简单? 注意: 1. 上传到github的版本需要有一个Release,设置Tag 2. 如果出现”Dependency 阅读全文

posted @ 2016-10-27 14:23 屌丝迷途 阅读(588) 评论(0) 推荐(0) 编辑

Android4.4访问外部存储
摘要:在Android 4.4系统中,外置存储卡(SD卡)被称为二级外部存储设备(secondary storage),应用程序已无法往外置存储卡(SD卡)写入数据,并且WRITE_EXTERNAL_STORAGE只为设备上的主要外部存储(primary storage)授予写权限,对于其他外部存储,其上 阅读全文

posted @ 2016-10-25 16:45 屌丝迷途 阅读(2227) 评论(0) 推荐(0) 编辑

[转]Android应用程序框架思路整理
摘要:一.一般Android应用程序架构(Book,购彩,Market)。 普通的应用程序由于只需要用到Android的联网与显示的功能,所以应用程序大体上是呈现为UI(Activities)与网络(Network)等其他模块进行绑定,数据交互的应用程序。 优点: (1)此种是一种通用的类J2ME的应用开 阅读全文

posted @ 2016-10-21 10:47 屌丝迷途 阅读(614) 评论(0) 推荐(0) 编辑

[转]设计一款Android App总结
摘要:开发工具的选择 开发工具我将选用Android Studio,它是Google官方指定的Android开发工具,目前是1.2.2稳定版,1.3的预览版也已经发布了。Android Studio的优点就不需多说了,GitHub上大部分的Android开源库也都已迁移到Android Studio上来, 阅读全文

posted @ 2016-10-21 10:27 屌丝迷途 阅读(540) 评论(0) 推荐(0) 编辑

两个Service之间相互监视的实现
摘要:在实际开发中可能需要用到两个Service相互监视的情况,本示例就是实现此功能以作参考。 服务B: IBridgeInterface.aidl 界面: AndroidManifest.xml 由于涉及到跨进程,onServiceConnected() 方法中使用 而不能直接类型转换 onStartC 阅读全文

posted @ 2016-10-13 10:43 屌丝迷途 阅读(875) 评论(0) 推荐(1) 编辑

Activity与Service进行数据交互
摘要:Android启动Service有两种方法,一种是startService,一种是bindService。生命周期如下: 执行startService时,调用者如果没有stopService,Service会一直在后台运行。多次调用startService,该Service只能被创建一次,即该Ser 阅读全文

posted @ 2016-10-12 15:54 屌丝迷途 阅读(2536) 评论(0) 推荐(0) 编辑

Android 6.0权限全面详细分析和解决方案
摘要:原文: http://www.2cto.com/kf/201512/455888.html http://blog.csdn.net/yangqingqo/article/details/48371123 http://inthecheesefactory.com/blog/things-you-n 阅读全文

posted @ 2016-10-08 09:49 屌丝迷途 阅读(10027) 评论(1) 推荐(1) 编辑

Android执行程序或脚本的方法
摘要:Java中提供了两种方法来执行程序或脚本: (1) 使用Runtime的exec()方法 (2) 使用ProcessBuilder的start()方法 ProcessBuilder.start() 和 Runtime.exec() 方法都被用来创建一个操作系统进程(执行命令行操作),并返回 Proc 阅读全文

posted @ 2016-09-12 20:23 屌丝迷途 阅读(4780) 评论(0) 推荐(0) 编辑

导航

< 2025年2月 >
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 1
2 3 4 5 6 7 8

统计

点击右上角即可分享
微信分享提示