android-杂项
文章平均质量分 78
雨幕青山
人生至美,不过那一抹阳光
展开
-
android:在照片上绘制涂鸦
这个应该是简易版的美图秀秀(小伙伴们吐槽:你这也叫简易版的??我们看着怎么不像啊……)。好吧,只是在图片上绘制涂鸦,然后保存。一、选择图片这个道长有必要说一下,在绘制涂鸦时,笔画会根据设置ImageView的大小和屏幕的尺寸(不是像素)产生误差。这个道长暂时还没有方法解决,只是规避了一下。把ImageView设置为全屏,布局文件代码如下<?xml version="1.0" encoding="原创 2017-05-23 12:24:19 · 3604 阅读 · 1 评论 -
Android Studio平台下JNI开发:Java传参给C
之前道长和小伙伴们分享了一下Android Studio平台下JNI开发:入门使用及常见错误。这里在和小伙伴们分享一下Java传参给C语言。如果对JNI开发还不熟悉可以看一下道长之前分享的。1.在MainActivity中声明本地方法 // 声明一个本地方法,用native关键字修饰 public native String getStringFromNative(); // 传int值向C p原创 2017-07-07 17:43:11 · 845 阅读 · 0 评论 -
Android:学习AIDL,这一篇文章就够了(上)
本篇博客转载的地址:http://blog.csdn.net/luoyanglizi/article/details/51980630前言在决定用这个标题之前甚是忐忑,主要是担心自己对AIDL的理解不够深入,到时候大家看了之后说——你这是什么玩意儿,就这么点东西就敢说够了?简直是坐井观天不知所谓——那样就很尴尬了。不过又转念一想,我辈年轻人自当有一种一往无前的锐气,标题大气一点岂不更好?并且大家都是转载 2017-08-08 08:55:06 · 529 阅读 · 0 评论 -
Android socket通信的长连接与心跳检测
在Android开发中,我们可能需要和服务器保持连接不断开,这时需要用到socket通信的长连接,并且定时发送消息检测是否是连接状态——心跳检测。 我们需要一个客户端和一个服务器端的demo,现在我就贴出重要代码,主要是android客户端的,服务器端的demo供大家下载。 首先我们需要新建一个BackService类来继承Service:package com.example.转载 2017-08-02 17:13:15 · 5355 阅读 · 3 评论 -
android:configChanges属性总结
转载地址:http://blog.csdn.net/zhaokaiqiang1992/article/details/19921703android中的组件Activity在manifest.xml文件中可以指定参数android:ConfigChanges,用于捕获手机状态的改变。 在Activity中添加了android:configChanges属性,在当所指定属性(Configuratio转载 2017-08-14 17:24:32 · 524 阅读 · 0 评论 -
android studio Gradle使用详解
原文地址:https://www.cnblogs.com/ut2016-progam/p/5871430.html1. 项目中Gradle文件对于一个gradle项目,最基础的文件配置如下: 一个项目有一个setting.gradle、一个顶层的 build.gradle文件、以及每个Module中一个build.gradle文件。1.1 setting.gradle文件...转载 2018-08-06 14:47:52 · 3689 阅读 · 0 评论 -
android studio 搭建组件化项目框架
由于之前项目的冗余功能和代码增多,让app的运行bug频出以及维护成本和维护难度的增加。公司领导不得不下定决心重新做一款app,把一些主要的功能从旧的app中剥离出来梳理分类,重新做一款便于维护,耦合性低的app。经过调研公司领导决定搭建组件化项目框架。 由于组件化的使用比较广泛。组件化的优点道长也就不多说了,个人认为组件化最重要的优点在于耦合性低,以后对每个模块可以单独维护而不影响其他功能。对...原创 2018-08-02 16:28:54 · 7322 阅读 · 1 评论 -
Android:Git中关于管理子模块的指令
之前一篇博客写了关于组件化开发的文章《android studio 搭建组件化项目框架》,在其中使用了指令关联壳工程与子模块。但是在关联错误时怎么解除关联关系等操作没有说,这里就和大家分享一下其他关于管理子模块的指令。1.Clone带子模块的工程git clone ..project.git ProjectAcd ProjectAgit submodule initgit sub...原创 2018-08-02 17:43:13 · 1543 阅读 · 0 评论 -
android:service见解
目录一、简介二、service的使用1.Service AndroidManifest.xml 声明2.Started Service3.Bound Service4.Local Service VS Remote Service5.Service特性6.IntentService7.前台Service一、简介Service通常总是称之为“后台服务”,其中“后台”一词是相对于前台而言的,具体...转载 2018-11-23 17:14:23 · 185 阅读 · 0 评论 -
android:activity启动模式见解
目录一、简介二、Using the manifest file1.standard2.singleTop3.singleTask4.singleInstance5.四种模式的区别三、Using Intent flags1.onNewIntent(Intent intent):一、简介启动模式允许开发者定义一个activity的新实例如何与当前的Task关联。如果Activity A开启Act...转载 2018-12-08 15:53:11 · 406 阅读 · 0 评论 -
android:soundPool使用
一、简介android开发过程中还是会遇到一些音频的播放,在android系统集成的音乐播放器有MediaPlayer、SoundPool等。如果播放背景音乐等长时间运行的音频,MediaPlayer合适。MediaPlayer存在如下缺点:1.延时时间较长,且资源占用率高。2.不支持多个音频同时播放。如果应用程序经常播放密集、急促而又短暂的音效(如游戏音效)那么使用MediaPla...原创 2018-12-08 16:49:59 · 390 阅读 · 0 评论 -
Android动态加载基础:ClassLoader工作机制
一、类加载器ClassLoader早期使用过Eclipse等Java编写的软件的同学可能比较熟悉,Eclipse可以加载许多第三方的插件(或者叫扩展),这就是动态加载。这些插件大多是一些Jar包,而使用插件其实就是动态加载Jar包里的Class进行工作。这其实非常好理解,Java代码都是写在Class里面的,程序运行在虚拟机上时,虚拟机需要把需要的Class加载进来才能创建实例对象并工作,而完成这一转载 2017-07-06 10:32:46 · 976 阅读 · 0 评论 -
Android Studio平台下无线调试
有的小伙伴在Android App真机调试中有时候不断的插拔USB线会感觉比较麻烦而选择无线调试,但是道长是因为公司App调试时外部插拔设备占用了USB口,无法进行有线调试而选择无线调试。方法一:使用Android Studio插件Android Studio是功能强大的,各种各样的插件让Android Studio能够处理各种情况。1.adb wifi点击Ctrl+Alt+S打开Android原创 2017-07-13 16:46:36 · 2822 阅读 · 0 评论 -
android:android6.0运行权限管理
为了更好的保护了用户的隐私,在Google发布的android6.0中推出了新的权限机制,Google将权限分为两类,一类是Normal Permissions,这类权限一般不涉及用户隐私,是不需要用户进行授权的,比如手机震动、访问网络等;另一类是Dangerous Permission,一般是涉及到用户隐私的,需要用户进行授权,比如读取sdcard、访问通讯录等。当app需要用户授予不恰当的权限的原创 2017-05-24 16:27:12 · 844 阅读 · 0 评论 -
android:沉浸式状态栏(状态栏一体化)
沉浸式状态栏是从IOS流行起来的,毕竟整个界面设计的比较完美话,上面有个白条的话比较违和。然后android也慢慢流行起来。所以较早版本的android不支持沉浸式状态栏。我们先看一下如果不设置状态栏的app界面(theme为NoActionBar): 是不是看到上面的状态栏比较违和?样式一:实现代码如下: if (Build.VERSION.SDK_INT >= 21) {原创 2017-05-25 10:16:14 · 609 阅读 · 0 评论 -
android studio:打jar包、apk包
一、打apk包apk包分为debug和release两种包,在build.gradle中添加代码如下:buildTypes { debug { buildConfigField "boolean", "LOG_DEBUG", "true" // 显示Log zipAlignEnabled true // Zipalign优化原创 2017-05-17 11:44:39 · 524 阅读 · 0 评论 -
android:给图片打水印
现在是维护知识产权的时代,很多时候app展示的图片会要求打上水印以强调自己对图片的知识产权。现在道长给大家分享一下给图片打水印的方法。额,这里道长已经写成一个简单的工具类。先把工具类的代码贴上:import android.content.Context;import android.graphics.Bitmap;import android.graphics.Canvas;import a原创 2017-05-22 15:18:01 · 563 阅读 · 0 评论 -
android:热修复小结
版权声明:本文为博主原创文章,未经博主允许不得转载。 转载请标明出处: http://blog.csdn.net/lmj623565791/article/details/49883661; 本文出自:【张鸿洋的博客】一、概述 最新github上开源了很多热补丁动态修复框架,大致有:•https://github.com/dodola/HotFix •https://github.co转载 2017-06-20 17:54:33 · 398 阅读 · 0 评论 -
线程之间通讯之AsyncTask与Handler的区别
一、ANR异常Android4.0以后,网络访问、文件处理等耗时操作必须放到子线程中去执行,否则将会造成ANR异常。 应用程序无响应(Application Not Response ,简称ANR),产生ANR异常的原因是在主线程执行了耗时操作。对Activity来说,主线程阻塞5秒将造成ANR异常对BroadcastReceiver来说,主线程阻塞10秒将会造成ANR异常解决ANR异原创 2017-07-11 15:36:47 · 595 阅读 · 0 评论 -
手机相机和相册:基本调用与剪切相片
在Android系统中有很多系统控件是我们日常开发中经常使用到的,像键盘,相机,相册,电话,短信等等……今天道长给大家絮叨絮叨手机相册和相机的基本调用、系统自带的切图和自定义切图。让我们走起……相机的基本调用跳转到相机界面: private void startCamera(){ String status = Environment.getExternalStorageSta原创 2017-04-11 11:34:23 · 857 阅读 · 0 评论 -
android:获取APP开发中需要的数据
在app开发中经常需要获取一些app的数据或者手机信息。由于经常用到,道长就积累了一些。现在和小伙伴们分享一下。app中的信息1.获取控件的宽、高这里获取的宽高并非是设置的控件的dp值,而是返回的像素值,实现代码如下: ViewTreeObserver viewTreeObserver = image_view.getViewTreeObserver(); viewTreeObserver.a原创 2017-05-23 17:03:02 · 791 阅读 · 0 评论 -
Android手机设备唯一标识符
在Android App开发过程中有时需要确定手机设备的唯一性。但是Android 手机设备的唯一标识的获取并不能保持每次都能获取成功,因而无法保持手机的唯一性。Android手机获取唯一标识一直没有统一标准,每个公司都有自己的一套规则。首先说一下几种比较常用的作为手机设备唯一标识的:IMEI 范围:只能支持拥有通话功能的设备,对于平板不可以。 持久性:返厂,数据擦除的时候不彻底,保留了原来的原创 2017-07-12 11:36:06 · 4955 阅读 · 0 评论 -
Android Studio平台下JNI开发:入门使用及常见错误
我们公司app要把核心功能进行封装,封装成SDK方便以后得开发和集成。在开发SDK时可能要用到JNI的开发。而且之前道长写的JNI还是用的eclipse。现在使用Android Studio要重新熟悉一下,发现有很多容易忽视的小细节。造成编译不成功等。现在和小伙伴们分享一下道长踩的坑(重点是记录一下,万一在掉坑里那不丢人了)。一、概念介绍在我们开始之前我们首先要了解一下几个概念:1.JNIJNI的原创 2017-07-04 11:16:24 · 887 阅读 · 0 评论 -
android:broadcast见解
目录一、简介1.使用场景二、BroadcastReceiver1.自定义BroadcastReceiver2.BroadcastReceiver注册类型三、广播发送及广播类型四、不同注册方式的广播接收器回调onReceive(context, intent)中的context具体类型五、不同Android API版本中广播机制相关API重要变迁一、简介1.使用场景广播作为Android组件间...转载 2018-12-08 15:53:34 · 243 阅读 · 0 评论