- 博客(13)
- 资源 (23)
- 收藏
- 关注
原创 仿微信语音对话实现
要实现下面的布局(先思考下如何实现,看似简单,或许会有所收获) <FrameLayout android:layout_width="match_parent" android:layout_height="wrap_content"> <com.example.weixinrecorder.view.AudioReco...
2018-03-09 09:31:54 1040
原创 IntentService——异步的,会自动停止的服务
服务默认运行在主线程当中,如果要处理耗时操作,就必须开启子线程进行相关逻辑处理。同时,由于服务一旦启动,就会一直处于运行状态,必须调用stopService()或stopSelf()方法才能让服务停止。所以要实现让一个服务在执行完毕后自动停止的功能,在onStartCommand()方法中可以这样写: new Thread(new Runnable() { ...
2018-03-06 17:43:51 2324
原创 前台服务
服务几乎都是在后台运行的,但由于其系统优先级比较低,当系统出现内存不足的情况下,就有可能回收掉正在后台运行的服务。如果希望服务一直保持运行状态,可以考虑使用前台服务。 前台服务跟后台服务最大的区别在于,它会一直有一个正在运行的图标在系统的状态栏显示,下拉状态状态栏后可以看到更加详细的信息,非常类似通知的效果。public class MyService extends Serv...
2018-03-06 16:50:44 204
原创 活动(Activity)和服务(Service)进行通信模板
比如现在想在MyService里提供一个下载功能,然后在活动中可以决定何时开始下载,以及随时查看下载进度。实现这个功能的思路是创建一个专门的Binder对象来对下载功能进行管理。代码如下所示:public class MyService extends Service{ private DownloadBinder mBinder = new DownloadBinder...
2018-03-06 16:01:20 1004
原创 通用网络请求实现之HttpURLConnection和OkHttp
网络请求是一个耗时操作,所以我们需要开启一个子线程来发起网络请求,同时,由于耗时逻辑都是在子线程里进行的,那么服务器响应的数据就无法返回,这时我们应该考虑使用Java的回调机制。public interface HttpCallbackListener{ void onFinish(String response); void onError(Exception e);}...
2018-03-05 18:56:55 3552
原创 json解析的常用方式(不使用第三方库)
解析json数据有很多种方法,可以使用官方提供的JSONObject,也可以使用谷歌的开源库GSON,另外,一些第三方的开源库如Jackson,FastJSON等也非常不错。接下来主要学习前两种解析方式的用法。JSONObjectjson数据:[{"id":"5", "version":"2.1", "name":"c book"}, {"id":&
2018-03-05 17:13:43 2382 1
原创 OkHttp基本使用
添加依赖库 compile 'com.squareup.okhttp3:okhttp:3.4.1' //可以自行修改成最新版本Get请求 OkHttpClient client = new OkHttpClient();Request request = new Request.Builder() .url("http://www.baidu.com") //可以连...
2018-03-05 13:39:48 140
原创 WebView最基本设置使用说明
...WebView webView = (WebView)findViewById(R.id.web_view);webView.getSettings().setJavaScriptEnabled(true);webView.setWebViewClient(new WebViewClient());webView.loadUrl("http://www.baidu.com");.....
2018-03-05 11:48:38 278
原创 android调用摄像头拍照
该功能使用到的场景比较多,下面能过一个实例介绍其使用,布局比较简单只有两个控件,上面Button下面ImageView,Button用于打开摄像头进行拍照,而ImageView用于将拍到的图片显示出来。public class CameraTestActivity extends AppCompatActivity { public static final int TAKE...
2018-03-05 11:12:28 208
原创 android多媒体之播放音视频
播放音频 在Android中播放音频文件一般都是使用MediaPlayer类来实现,它对多种格式的音频文件提供了非常全面的控制方法。常用的控制方法有:setDataSource(), prepare(), start(), pause(), reset()(将MediaPlayer对象重置到刚刚创建的状态), seekTo(), stop()(停止播放音频,调用这个方法后的MediaPlay...
2018-03-03 00:56:36 2089
原创 通知的使用
相比于广播接收器和服务,在活动里创建通知的场景还是比较少的,一般只有当程序进入到后台的时候我们才需要使用通知。但是无论在哪里创建通知,整体的步骤都是相同的。NotificationManager manager = (NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE); 由于几乎Android系统的...
2018-03-02 10:41:52 236
原创 内容提供器(ContentProvider)的安全性
内容提供器是如何做到保证隐私数据不会泄露出去的? 因为内容提供器的良好机制,所有的CRUD操作都一定要匹配到相应的内容URI格式才能进行,而我们当然不可能向UriMatcher中添加隐私数据的URI,所以这部分数据根本无法被外部程序访问到,安全问题也就不存在了。...
2018-03-01 12:52:10 896
原创 程序运行时申请权限
大家都知道,Android6.0系统的新特性是运行时权限,为简单起见,下面以CALL_PHONE这个权限为例来示例如何使用。 CALL_PHONE这个权限是编写拨打电话的功能是需要声明的,因为拨打电话会涉及用户手机的资费问题,因而被列为危险权限。 首先,在清单文件AndroidManifest.xml中添加以下权限声明:<uses-permission android:n...
2018-03-01 03:58:41 396
Android开发艺术探索之高清版本
2018-02-02
Android源码设计模式解析与实战.PDF(高清完整版)
2017-12-05
android气泡式对话列表
2014-09-14
android4.0.*源码
2014-08-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人