Android——api阅读记录

ISBN书号API接口 快速查询ISBN书号基础信息 阅读详情

打算完整地将android官方api文档阅读一遍,并做简要记录。

2017/08/02:
1、蓝牙。主要是BluetoothAdapter的操作,与tcp的socket serversocket类似。

2、AysncTaskHandler and AysnctaskLoader:用于异步加载使用,特别是Asynctaskloader会比较实用,可以用在fragment或者activity的异步加载中。

3、在标题栏中可以直接添加searchview,代码如下:

Item = menu.add("Search");

item.setIcon(androi.R.draw.Search);

item.setView(new Searchview)

4、关于BroadCasTreceiver,发送本地广播,使用localbroadmanager.seentbroadcast();因为广播的onreceive()方法会立刻执行并返回,如果有耗时的操作要做,可以在onreceive()方法中调用Pendingintent result = goAysnc(),子异步线程中操作,执行完毕后,调用result.finish()

5、获取手机已安装应用的图标及名字的代码如下:

  List<ApplicationInfo> apps = mPm.getInstalledApplications(
                PackageManager.GET_UNINSTALLED_PACKAGES |
                PackageManager.GET_DISABLED_COMPONENTS);
还可以注册监听应用安装或者卸载的广播,还有一点,可以在自定义广播的构造方法中直接进行注册,这样就省去了在外部调用后需要注册的麻烦,提升封装力度。
public static class PackageIntentReceiver extends BroadcastReceiver {
    final AppListLoader mLoader;

    public PackageIntentReceiver(AppListLoader loader) {
        mLoader = loader;
        IntentFilter filter = new IntentFilter(Intent.ACTION_PACKAGE_ADDED);
        filter.addAction(Intent.ACTION_PACKAGE_REMOVED);
        filter.addAction(Intent.ACTION_PACKAGE_CHANGED);
        filter.addDataScheme("package");
        mLoader.getContext().registerReceiver(this, filter);
        // Register for events related to sdcard installation.
        IntentFilter sdFilter = new IntentFilter();
        sdFilter.addAction(Intent.ACTION_EXTERNAL_APPLICATIONS_AVAILABLE);
        sdFilter.addAction(Intent.ACTION_EXTERNAL_APPLICATIONS_UNAVAILABLE);
        mLoader.getContext().registerReceiver(this, sdFilter);
    }

    @Override public void onReceive(Context context, Intent intent) {
        // Tell the loader about the change.
        mLoader.onContentChanged();
    }
}
6、关于剪贴板,使用clipboardmanager,可以剪切string,uri,还有intent.

7、contentProvider使用:

实现contentprovider可实现getType()用于返回类型,如果存储的是文件、图片、视频,那么contentprovider存储的应该是这些文件对应的路径,这个时候如果需要返回类型,那么就需要实现getStreamType(Uri , filtertype),可以返回一个数组,如{image/jpg,image/png}

provider的权限设置:在manifest的provider组建声明中,添加android:permission 或者 android:readPermission 或者android:writePermission 设置相应的属性,这样如果别的程序希望访问这个provider,那么就需要在manifest添加该权限声明。还有一种临时权限的说法:在manifest的provider的声明中,添加android:grantPermission属性,用途:假设您需要实现电子邮件提供程序和应用的权限,如果您想允许外部图像查看器应用显示您的提供程序中的照片附件, 为了在不请求权限的情况下为图像查看器提供必要的访问权限,可以为照片的内容 URI 设置临时权限。 对您的电子邮件应用进行相应设计,使应用能够在用户想要显示照片时向图像查看器发送一个 Intent,其中包含照片的内容 URI 以及权限标志。 图像查看器可随后查询您的电子邮件提供程序以检索照片,即使查看器不具备对您提供程序的正常读取权限,也不受影响。用法:要向应用授予临时访问权限,Intent 必须包含 FLAG_GRANT_READ_URI_PERMISSION 和/或 FLAG_GRANT_WRITE_URI_PERMISSION 标志。 它们通过 setFlags() 方法进行设置。

数据库的批量操作,applyBatch(List<ContentProviderOPearations>);bulkInsert(ContentValues())

8、Context:deleteDataBase() deleteFile()  deleteSharepreference()删除这个应用的某个文件或者数据库

9、intent使用:

action+data配对使用如下,可进行特殊操作:

  • ACTION_VIEW content://contacts/people/1 -- Display information about the person whose identifier is "1".

  • ACTION_DIAL content://contacts/people/1 -- Display the phone dialer with the person filled in.

  • ACTION_VIEW tel:123 -- Display the phone dialer with the given number filled in. Note how the VIEW action does what is considered the most reasonable thing for a particular URI.

  • ACTION_DIAL tel:123 -- Display the phone dialer with the given number filled in.

  • ACTION_EDIT content://contacts/people/1 -- Edit information about the person whose identifier is "1".

  • ACTION_VIEW content://contacts/people/ -- 

  • 10、SearchView的使用,当用户在输入框输入时,就跟在百度里面输入一样,会自动联想,有相应的自动补全和推荐功能。可自动联想之前的输入历史,或者自定义联想内容。可参考文档实现。

  • 11、ActivityInfo 对应AndroidManifest中的<activity><receiver>标签,所以manifest中的activity的属性值及含义,在ActivityInfo都能找到;同理,ApplicationInfo对应的是<Application>标签;PackageInfo对应的是整个AndroidManifest,包括versionCode versionNam,permission,shareUserId,所有的activities services receivers.

  • 12、labelIntent:封装了intent,包含string和icon,可以很方便地用于发送CHOOSE的action.

2017-08-21

1、PackageManager:可以获取有关activity application的图标,权限等等,可以认为是android系统所有app的管家,想查询某个app的相关信息,就可以通过packagemanager来访问。有一个帖子介绍packagemanager非常详细的:http://blog.youkuaiyun.com/lusing/article/details/52229795

有相关方法比较重要的:

queryBroadCastReceiver(Intent, flags);queryContentProviders(intent,flags),queryIntentActivities(intent,flags);queryIntentServices(Intent intent, int flags);这些方法会返回一个列表,里面包含了能处理参数中的intent的组件;还有如下方法可以返回单个的组件:

resolveActivity(Intent intent, int flags);resolveContentProvider(String name, int flags);resolveService(Intent intent, int flags)

方法类型2:

void setComponentEnabledSetting (ComponentName componentName, int newState,int flags)这个方法能激活或者关闭某个组件。

常量3:

包含了androidmanifest中所有的feature(其实是一个过滤器,如果指定了我们的app需要某些feature,那么在那些没有我们指定需要的手机上面就不会显示我们的app).

动态权限检测:int checkPermission (String permName, String pkgName)

检测签名:int checkSignatures (String pkg1, String pkg2)

2、PackageStates:里面的常量包含了该应用的cachesize,codesize,mediasize等等关于存储容量的使用的数据。

3、PathPermission:用来表示Providerinfo类中的pathpermission的信息,providerInfo = PackageManager.resolveContentProvider().

4、permissiongroup,就是permission里面的一个tag。主要作用是用来显示application需要的权限,比如你使用了<uses-permission android:name="android.permission.INTERNET" />权限,那么在android的setting->applications->manage applications->你的应用程序,显示的是需要“Network communication”权限,这个“Network communication”就是permissionGroup的label。所以说permissiongroup只是一个逻辑分组,作用也只有显示应用程序权限给用户看的。

5、ShortCutManager:该功能是android7.0推出的新功能,效果描述如下:

普通应用,在桌面上点击图标时进入到我们的activity中,使用shortcutmanager,当用户在桌面上长按应用图标时,会弹出一个shortcuts的列表(具体数量自己可以设置),可以通过点击item直接进入到想进入的界面。譬如,message应用,如果我希望能给小明快速发送短信,那么我就可以添加一个shortcuts,当我长按message图标时,可以直接进入到给小明发短信的界面。一篇讲得比较好的帖子:http://blog.youkuaiyun.com/qibin0506/article/details/52878690

android.content.res:

1、关于打开文件,或者assets文件夹的相关信息:

 ParcelFileDescriptor parcelFileDescriptor = ParcelFileDescriptor.open("ss", ParcelFileDescriptor.MODE_READ_WRITE);
 AssetFileDescriptor assetFileDescriptor = new AssetFileDescriptor(parcelFileDescriptor,0,parcelFileDescriptor.getStatSize());
2、Resource:几乎涵盖了所有有关于资源的操作,包括获取string,text,boolean,dimesnions,R.layout.xxx,R.animation.xxx,R.id.assets资源(音乐,图片等等没有被appt工具处理的资源),获取屏幕分辨率,

设置,还有quantitystring(某些国家单复数的表示不一样)并同时进行格式化。

3、AssetManager:getLocale()方法可以获取当前国家;主要方法是打开文件。

4、ColorStateList:对应于xml文件中的selector(当用于空间颜色时,可以根据控件的不同状态显示不同的颜色);从api 23开始还能设置这些颜色的透明度,方法withAlpha(int alpha)
5、Configuration:能够通过这个获取很多系统信息:国家,字体,分辨率,输入法,输入键盘是否隐藏,屏幕方向,layout方向。

6、TypeArray:在自定义方法中的,根据obtainStyledAttribute()可以获取到typearray,然后用typearray就可以获取一些资源值,dimension,color,string,int等等。




初学android-调用百度api显示地图(出现显示网格问题) 今天学习了利用百度提供的api来在我们的android手机端显示地图的过程,这个过程挺简单,但是还是遇到了一些问题,下面我想理一下具体的过程,保存在此供以后阅读。 1.首先在http://lbsyun.baidu.com/登陆百度账号,打开下面画面 根据你的需要点击(比如你想要在你的应用上添加百度地图,那么点击第一个Android地图SDK),然后进入仔细阅读api文档。 2.在阅读api文 阅读详情

相关推荐

记一次APK反编译,拿到自己想要的API过程及应用

目的 我的电脑装了一个开机卡 本身已提供了windows和Android和微信的程序 我使用的是iPhone,想拿到API 写快捷指令,这样就可以通过 嘿,Siri 打开/关闭/重启电脑 (现有的app 要打开app 还要点击 觉得麻烦,之前本来想写py脚本用快捷指令运行,但是Pythoniate太贵了 凎) 等等操作 在做这些操作之前询问过客服,不能提供。所以我就自己来弄了。 注意:这些都是我个人使用,这里就不贴出开机卡的厂家和店铺地址了 之前抓过包,抓不到 反编译过程 教程很多,可以直接跳过 反编译

weixin_44216706的博客 4745

品类超全的热门免费可用 API 汇总

品类超全的热门免费可用 API 汇总

海碗吃饭的博客 911

手机阅读API文档的工具

NULL 博文链接:https://milker.iteye.com/blog/1450155

微信读书API分析

现有微信读书相关开源项目概述 微信读书提供了大量正版图书,全文可复制、标注便利,支持移动和PC两大平台。所以近几年一直使用微信读书看书,并对大量图书做了批注,但是微信读书不支持导出批注。在github搜下了,发现了三个比较好的项目,他们对微信读书API已经做了很多探索。 @arry-lee 的wereader项目,地址:https://github.com/arry-lee/wereader 该项目是最早解释微信读书API的项目,具有以下特点: 第一次运行需要粘贴微信读书的cookie字符串。这就需要

mighty13的专栏 4万+

使用Content Provider案例

这是使用Content Provider案例源码,详细讲解请移步http://blog.youkuaiyun.com/wei_zhi/article/details/52960073

Android 使用ContentProvider扫描手机中的图片,仿微信显示本地图片效果

Android 使用ContentProvider扫描手机中的图片,仿微信显示本地图片效果,提供访问本地图片的工具类,有效避免OOM的出现,项目详情http://blog.youkuaiyun.com/xiaanming/article/details/18730223

第十一天ContentProvider 制作一个图片浏览器

图片浏览器 清单文件中的授权 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> xml布局 <?xm...

shuai_ge_feng的博客 736

Android利用ContentProvider获取本地数据的方法

主要介绍了Android利用ContentProvider获取本地数据的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

3步搭建免费小说API:零基础快速拥有个人阅读应用

还在为寻找稳定的小说阅读数据源而烦恼吗?追书神器API项目为你提供了一站式解决方案!这个开源项目封装了30万本小说的核心接口,让你无需技术背景也能快速构建个人阅读应用。🎯 ## 🚀 为什么选择这个免费小说API? 对于想要开发小说阅读应用的朋友来说,追书神器API项目解决了最核心的问题:**数据来源不稳定**。传统的商业接口往往有VIP限制,或者会突然下架书籍,而这个项目完全免费开放,所有

gitblog_01167的博客 452

Android应用中使用ContentProvider扫描本地图片并显示

主要介绍了Android应用中使用ContentProvider扫描本地图片并显示的方法,比调用本地图库的方法更加灵活和可定制,需要的朋友可以参考下

Python + Google AI 自动修复 Sonar Bug 实践

在工作中总会遇到种种不期而至的需求,比如前段时间突然要修复所有 Sonar Bug,涉及各种琐碎的代码风格问题,包括但不限于语法不规范、废弃注释等问题。这些项目都已经持续开发几年了,Sonar 上的问题层出不穷,各种问题已经累积到了上万个,手动修复不但费时费力,而且过程异常枯燥。

子洋 Blog 2414

Android api阅读记录02

1、Matrix : mapPoint() mapRect(src,dst)...根据矩阵将src内容转化并存储到dst中; 矩阵操作,preTranslate(dx,dy) = Matrix*t(dx,dy); postTranslate(dx,dy) = t(dx,dy)*Matrux 2、Movie:根据api来看,应该代笔的就是电影,有duration 关于流和文件的操作 3、Pa

HelloMagina的博客 573

如何用谷歌插件Apollo.io高效开发客户?手把手教你避开常见坑点

本文详细介绍了如何利用谷歌插件Apollo.io高效开发外贸客户,包括核心功能解析、免费额度最大化利用策略、多插件协同技巧以及常见陷阱规避方法。通过Apollo.io的智能匹配算法和庞大数据库,外贸从业者可以精准锁定目标客户,提升开发效率。

banana的博客 885

Android API阅读记录03

- *Android.graphics 包:主要是有关bitmap的操作,属于大的功能块。* canvas:一般的应用画静态界面的画,可以在view上画,但是一些需要经常性redraw()的界面,就需要在canvas上进行画,性能会更好。 想要使用canvas,必须使用一个bitmap来创建,画布只是一块布,而这个bitmap相当于提供了一块内存。Bitmap b = Bitmap.create

HelloMagina的博客 438

西工大noj100题python2024第一季1-10

【代码】西工大noj100题python2024第一季1-10。

weixin_70523540的博客 1796

AI写作:为AI人工智能领域赋能

AI写作技术作为自然语言处理(NLP)领域的重要应用方向,正在深刻改变内容创作的方式。系统介绍AI写作的技术原理分析主流AI写作模型的架构特点提供实践性的代码示例探讨实际应用中的关键问题展望未来发展趋势本文涵盖从基础理论到高级应用的完整知识体系,适用于希望深入了解AI写作技术的开发者和研究人员。背景介绍:建立基本概念框架核心概念:解析关键技术原理算法实现:通过代码演示具体实现数学原理:深入底层数学模型实践应用:展示真实场景案例资源推荐:提供学习路径和工具。

AI天才研究院 3052

终极漫画隐私保护指南:Kotatsu密码与指纹安全功能详解

Kotatsu作为一款专为Android设计的漫画阅读应用,不仅提供了丰富的漫画资源和舒适的阅读体验,还在隐私保护方面下足了功夫。本文将详细介绍Kotatsu的密码与指纹安全功能,帮助你轻松设置和管理应用安全,让你的漫画阅读更加安心。 ## 漫画阅读也需隐私保护:Kotatsu安全功能概述 在数字时代,隐私保护越来越重要,漫画阅读也不例外。Kotatsu深知用户对隐私的需求,提供了密码保护和指

gitblog_00698的博客 465

VINS技术路线与代码详解

VINS技术路线 写在前面:本文整和自己的思路,希望对学习VINS或者VIO的同学有所帮助,如果你觉得文章写的对你的理解有一点帮助,可以推荐给周围的小伙伴们,当然,如果你有任何问题想要交流,欢迎随时探讨。话不多说,下面上正文。 VINS代码地址:https://github.com/HKUST-Aerial-Robotics/VINS-Mono 参考文档:1.VINS-Mono A R...

wangshuailpp的博客 7万+

GLM-Z1-9B-0414模型权重管理终极指南:safetensors格式与分布式加载详解

GLM-Z1-9B-0414作为一款卓越的9B参数开源大语言模型,其**权重管理**和**分布式加载**机制是高效部署的关键。本文将深入解析safetensors格式的优势,并提供完整的**模型权重管理**实践指南,帮助您快速掌握GLM-Z1-9B-0414的部署技巧。无论您是AI开发者还是企业用户,了解这些核心概念都能显著提升模型部署效率和稳定性。 ## 🔍 为什么选择safetensors

gitblog_00012的博客 613

esp8266步进电机驱动控制

blinker控制步进电机起保停,正反转(Arduino uno+esp8266+TB6600驱动器) Arduino uno的板子的程序 esp8266板子接入到Arduino uno的控制引脚上的5,6,7 esp8266程序 //****库***** #define BLINKER_WIFI //官方wifi协议库 #define BLINKER_PRINT Serial //串口协议库 #include <Blinker.h&gt

perseverance51博客 2854

第四节:Vben Admin登录对接后端getUserInfo接口

上一节,我们完成了/api/auth/login接口的创建,通过login接口,我们完成了登录和Token的生成。但是登陆还是报404返回,发现是Vben Admin又请求了一个/api/getUserInfo接口,本节我们就来分析完成这个接口本节,我们完成了getUserInfo接口,完成了登录操作,成功的进入到工作台页面。

cuiwin的专栏 2845

android开发新浪微博客户端 完整攻略 [新手必读]

开始接触学习android已经有3个礼拜了,一直都是对着android的sdk文档写Tutorials从Hello World到Notepad Tutorial算是初步入门了吧,刚好最近对微博感兴趣就打算开发个android版本的新浪微博客户端作为练手项目,并且以随笔的方式详细的记录开发的全过程。本人对java语言以及eclipse Ide都是初次应用基本上属于边学边用,做移动设备上的东西也是第一...

weixin_34268843的博客 493

科研——BIBM论文修改和提交

BIBM的相关操作流程汇总

Blackoutdragon的博客 6688

软件工程项目冲刺第一天

已完成的任务:   申请百度地图api密钥key;   阅读百度地图Demo;   查询有关android开发定位功能应用实现方法。 未完成:      android自带的定位功能api不稳定,有可能选择百度地图api,但是下载的百度地图Demo不能在自己的手机中应用,及显示不出地图,未解决;   百度地图最新版本的sdk网上介绍的很少,甚至几乎没有,学习使用有很多困难。 ...

weixin_30711917的博客 128

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

FrameworkStatsLog

所以FrameworkStatsLog本质上也是用于将数据传递到statsd上,我们可以通过调用FrameworkStatsLog.java里的write()方法来对事件进行打点。genrule是用来生成文件的,当编译引用它的jar包时,会生成对应的文件,所以FrameworkStatsLog.java这个文件可能是按照某种编译规则生成的。(1)tools:表示可在命令行下运行的jar包,即指定main()入口的jar包,这里是。执行tools指定的jar包的cmd命令,使用这个命令可执行jar包。

今天也是星期五的博客 2717

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

最新安卓版本对照表,API对照表(持续更新,更新到安卓17)

话不多说,直接上表,持续更新(更新到安卓16)。 列出了所有记录的可能会影响应用开发者的功能和行为变更。请使用此列表查找影响您的变更,然后点击相应的链接以阅读文档。下表列出了所有记录的可能会影响应用开发者的功能和行为变更。请使用此列表查找影响您的变更,然后点击相应的链接以阅读文档。Java 和 OpenJDK 是 Oracle 及/或其关联公司的商标或注册商标。

雨季余静的博客 9万+

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

上一篇: Android自定义ViewGroup
下一篇: ubuntu 网易云音乐安装
HelloMagina
博客等级 码龄10年 216粉丝 73原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值