Google Android Developer 文档学习
文章平均质量分 77
ssjj_programmer
这个作者很懒,什么都没留下…
展开
-
Android 动画设计
一、帧动画加载定义xml文件:<animation-list xmlns:android="http://schemas.android.com/apk/res/android" android:oneshot="false"> 动画加载:rocket_thrust:定义在drawable文件夹下的xml文件;ImageVi原创 2016-11-29 22:17:07 · 278 阅读 · 0 评论 -
SQLite数据库基本操作
一、定义一个合约类(contract class),在里面定义字符表格名,列名等字符串常量,如:public final class FeedReaderContract { // To prevent someone from accidentally instantiating the contract class, // give it an empty construc原创 2016-12-06 23:06:37 · 233 阅读 · 0 评论 -
App与其他应用交互之隐式意图的使用
一、常见的隐式意图1.打电话:Uri number = Uri.parse("tel:5551234");Intent callIntent = new Intent(Intent.ACTION_DIAL, number);2.看地图:// Map point based on addressUri location = Uri.parse("geo:0,0?q=1600+Amph原创 2016-12-06 23:12:21 · 594 阅读 · 0 评论 -
多媒体播放器配置(使用MediaPlayer)
一、权限声明如果播放的音频流来自网络,需声明权限:如果想让播放期间屏幕不息屏,可以调用MediaPlayer.setScreenOnWhilePlaying() 或MediaPlayer.setWakeMode()方法,需要权限:二、MediaPlayer支持多种媒体来源,如:app本地资源(row文件夹下);内部URI,外部URL。如播放本地row文件夹下的音频原创 2016-12-13 22:23:10 · 694 阅读 · 0 评论 -
控制设备的照相机(camera)
一、添加权限:使用摄像头:注:如果通过意图开启设备上已有的照相app,则不需要该权限。设备需拥有摄像头:存储图像或录像到SD卡:摄像是需要录音:二、用Intent使用已有的照相机app:拍照:Action:MediaStore.ACTION_IMAGE_CAPTURE ; Extra:MediaStore.EXTRA_OUTPUT:原创 2016-12-13 22:33:43 · 518 阅读 · 0 评论 -
Android常见隐式意图使用
一.设置闹铃操作(action):ACTION_SET_ALARM数据 URI(data):无MIME 类型(mimeType):无Extra:EXTRA_HOUR闹铃的小时。EXTRA_MINUTES闹铃的分钟。EXTRA_MESSAGE用于标识闹铃的自定义消息。EXTRA_DAYS一个 ArrayList,其中包括应重复触发该闹铃的每原创 2016-12-07 23:15:52 · 906 阅读 · 0 评论 -
Android程序运行权限申请
一、判断该界面是否拥有该权限:// Assume thisActivity is the current activityint permissionCheck = ContextCompat.checkSelfPermission(thisActivity, Manifest.permission.WRITE_CALENDAR);如果程序拥有这个权限,则返回 Packa原创 2016-12-07 23:21:35 · 253 阅读 · 0 评论 -
Action Provider 和Action View
使用ShareActionProvider在ActionBar中添加分享菜单:一.在menu清单文件中添加actionProviderClass属性,属性值为android.widget.ShareActionProvider,如: <item android:id="@+id/menu_item_share" android:sho原创 2016-12-08 22:44:26 · 419 阅读 · 0 评论 -
文件分享(使用Content URI)
一、在manifest文件中声明FileProvider,如:<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.myapp"> <application ...> <provider andro原创 2016-12-08 22:52:36 · 726 阅读 · 0 评论 -
缓存图片资源
一、使用内存缓存,通过使用LruCache类,需要确定缓存的大小,如使用app运行内存的1/8:private LruCache mMemoryCache;@Overrideprotected void onCreate(Bundle savedInstanceState) { ... // Get max available VM memory, exceeding t原创 2016-12-15 21:54:16 · 230 阅读 · 0 评论 -
Android 文件存储系统
一、内部存储(internal storage)和外部存储(external storage)的比较:1.内部存储总是可用的,外部存储不总是可用的,用户可以人为的卸载;2.当用户卸载你的软件时,该软件存储在内存的所有文件会被移除,对于存储在sd卡的文件,只能移除通过getExternalFilesDir()获取的文件夹下的文件;3.读写内存不需要权限,读写sd卡需要相应权限原创 2016-12-06 23:01:25 · 340 阅读 · 0 评论 -
App Widget深入+Android Studio 真机断点调试注意事项
最近几天一直想做一个类似于时钟的App Widget的效果,然后就开始设计,看了google 的有关文档,按照步骤先弄出了一个没有任何实际效果的widget,又了解到相关的AppWidgetProvider其实是一个广播接收者,可以接收特定的广播事件,大致有以下几个:1.AppWidgetManager.ACTION_APPWIDGET_UPDATE,对应调用onUpdate()方法;原创 2016-12-05 22:34:42 · 1476 阅读 · 0 评论 -
构建应用程序窗口小部件(App Widget)
一、在Manifast.xml文件中声明你自定义的AppWidgetProvider: <meta-data android:name="android.appwidget.provider" android:resource="@xml/example_appwidget_info" />receiver na原创 2016-11-29 22:40:09 · 343 阅读 · 0 评论 -
Android支持不同设备上的显示
一、支持不同的语言在res文件夹新建带locale后缀的values文件夹,如:MyProject/ res/ values/ strings.xml values-es/ strings.xml values-fr/ strings.xml在相应的strings.xml文件原创 2016-11-30 22:52:31 · 227 阅读 · 0 评论 -
文件分享(使用Content URI)深入
上次笔记讲述了设计一个文件分享app的基本思路,今天从源码的角度具体解析被选中文件URI是如何生成的。要生成文件URI,需调用getUriForFile()方法,如:fileUri = FileProvider.getUriForFile(FileSelectActivity.this, "com.example.ludou.sharefile", requestFile);第一个参数为原创 2016-12-11 22:12:27 · 1316 阅读 · 0 评论 -
使用Android Beam进行近场通信(NFC)
要使用Android Beam特性需满足以下要求:1.对于大文件的传输只能运行在Android4.1(API Level 16)或以上的系统上;2.要传输的文件必须是位于外部存储空间(external storage)中,且对外具有可读性;3.必须为要传输的文件提供一个file URI,由FileProvider.getUriForFile()方法生成的URI无效。一、发送文件原创 2016-12-11 22:18:00 · 2214 阅读 · 0 评论 -
在Activity中添加Fragment
一、在Activity布局文件中静态添加Fragment:res/layout-large/news_articles.xml<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="horizontal" android:layout_width原创 2016-12-01 23:27:14 · 1271 阅读 · 0 评论 -
使用Android系统打印功能
一、打印图片使用PrintHelper类,如:private void doPhotoPrint() { PrintHelper photoPrinter = new PrintHelper(getActivity()); photoPrinter.setScaleMode(PrintHelper.SCALE_MODE_FIT); Bitmap bitmap = B翻译 2016-12-14 22:24:08 · 24921 阅读 · 9 评论 -
高效展示图片,防止OOM
一.加载高分辨率图片:BitmapFactory类提供各种解码方法来构造Bitmap,如decodeByteArray(), decodeFile(), decodeResource()等,这些方法在解码时会给构造的Bitmap对象分配内存,因而很容易造成OOM异常,但同时也提供了通过BitmapFactory.Options类来指定解码选项的功能,设置 inJustDecodeBou翻译 2016-12-14 22:31:38 · 282 阅读 · 0 评论 -
Service 绑定
一、Activity之间协调:1.当在同一个进程中从一个Activity开启另一个Activity时,它们的生命周期方法是这样的:A Activity 开启了 B Activity:A调用onPause(),B调用onCreate(),onStart(),onResume(),此时B Activity与用户进行交互,然后A Activity的onStop()方法调用,所以如果两个界原创 2016-12-03 23:03:05 · 188 阅读 · 0 评论 -
Android音频播放配置
Android系统封装了许多音频流类型,如多媒体,铃声,闹钟等,一般来说音频播放app使用的是STREAM_MUSIC流。一、使用音量键控制app的播放音量:setVolumeControlStream(AudioManager.STREAM_MUSIC);二、使用耳机的实体按键控制app音频的播放(play,pause,stop,skip,previous):当用户按下其原创 2016-12-12 22:57:33 · 374 阅读 · 0 评论 -
管理Bitmap的存储空间
注:1.在Android2.2(API level 8)之前,当垃圾回收线程工作时,主线程会阻塞,这就造成了不好的用户体验,所以在以后的版本中,出现了并发执行的垃圾回收线程,这意味着当一个Bitmap没有被引用时,就会被回收;2.在Android2.3.3(API level 10)之前,Bitmap的像素数据是存储在本地内存中,且与Bitmap本身是分开存储的,(Bitmap存储在D翻译 2016-12-21 22:37:26 · 533 阅读 · 0 评论