当前位置:网站首页>Android内容提供器读取手机中的音乐文件信息,百度、阿里、滴滴、新浪的面试心经总结
Android内容提供器读取手机中的音乐文件信息,百度、阿里、滴滴、新浪的面试心经总结
2022-01-15 02:25:40 【mb61c1dbbb44788】
// 歌的时长
long duration = cursor.getLong(cursor.getColumnIndex(MediaStore.Audio.Media.DURATION));
// 歌的大小
long size = cursor.getLong(cursor.getColumnIndex(MediaStore.Audio.Media.SIZE));
// 歌的绝对路径
String url = cursor.getString(cursor.getColumnIndex(MediaStore.Audio.Media.DATA));
// 专辑
String album = cursor.getString(cursor.getColumnIndex(MediaStore.Audio.Media.ALBUM));
long album_id = cursor.getLong(cursor.getColumnIndex(MediaStore.Audio.Media.ALBUM_ID));
int ismusic = cursor.getInt(cursor.getColumnIndex(MediaStore.Audio.Media.IS_MUSIC));
// 如果歌曲符合指定要求,就添加到列表中去
if (ismusic != 0 && duration / (500 * 60) >= 1) {
// 对m对象的元素进行赋值
m.setId(id);
m.setTitle(title);
m.setArtist(artist);
m.setDuration(duration);
m.setSize(size);
m.setUrl(url);
m.setAlbum(album);
m.setAlbum_id(album_id);
musicList.add(m);
}
//移动到下一行
cursor.moveToNext();
}
}
// 返回一个带数据的Music类的列表
return musicList;
}
3.javabean
public class Music {
private long id;
private long album_id;
// 歌名
private String title;
//歌手
private String artist;
private long size;
// 歌曲绝对路径
private String url;
private int isMusic;
// 歌曲时间
private long duration;
// 专辑
private String album;
public String getAlbum() {
return album;
}
public void setAlbum(String album) {
this.album = album;
}
public long getDuration() {
return duration;
}
public void setDuration(long duration) {
this.duration = duration;
}
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
public int getIsMusic() {
return isMusic;
}
public void setIsMusic(int isMusic) {
this.isMusic = isMusic;
}
public long getAlbum_id() {
return album_id;
}
public void setAlbum_id(long album_id) {
this.album_id = album_id;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getArtist() {
return artist;
}
要如何成为Android架构师?
搭建自己的知识框架,全面提升自己的技术体系,并且往底层源码方向深入钻研。
大多数技术人喜欢用思维脑图来构建自己的知识体系,一目了然。这里给大家分享一份大厂主流的Android架构师技术体系,可以用来搭建自己的知识框架,或者查漏补缺;
对应这份技术大纲,我也整理了一套Android高级架构师完整系列的视频教程,主要针对3-5年Android开发经验以上,需要往高级架构师层次学习提升的同学, 在这里点击GitHub免费分享,希望能帮你突破瓶颈,跳槽进大厂;
最后我必须强调几点:
1.搭建知识框架可不是说你整理好要学习的知识顺序,然后看一遍理解了能复制粘贴就够了,大多都是需要你自己读懂源码和原理,能自己手写出来的。
2.学习的时候你一定要多看多练几遍,把知识才吃透,还要记笔记,这些很重要! 最后你达到什么水平取决你消化了多少知识
3.最终你的知识框架应该是一个完善的,兼顾广度和深度的技术体系。然后经过多次项目实战积累经验,你才能达到高级架构师的层次。
你只需要按照在这个大的框架去填充自己,年薪40W一定不是终点,技术无止境
版权声明
本文为[mb61c1dbbb44788]所创,转载请带上原文链接,感谢
https://blog.51cto.com/u_15466190/4928951
边栏推荐
- The world is always hostile to good people.
- Re regular matching findall (. +?) Match any content that conforms to a certain format (regular matching catch bullet screen)
- Android中的羊角符,面試看這個就够了
- 數據分析八大模型:OGSM模型
- La corne d'agneau d'Android, c'est assez pour l'interview
- Huit modèles d'analyse des données: modèle ogsm
- Exemple d'application de linq
- Utilisez S7. Net communication library
- Écrire La Bibliothèque de communication Modbus TCP
- Lire le profil INI
猜你喜欢
-
Utilisez S7. Net read Siemens 1500plc
-
Halcon joint C # Programming Experiment
-
Utiliser nmodbus4 pour lire les données à la fois RTU et TCP
-
Tiktok Data Analysis options Platform - tichoo Data
-
MySQL review: create tables, MySQL data types, primary key constraints, primary key
-
Linear Algebra: matrix review
-
Review of Linear Algebra: determinant
-
The digital RMB cross-border payment test has been continuously promoted, and mainland residents can also shop in Hong Kong in the future
-
Thesis classification and writing basis
-
YC Framework version update: v1.0 zero point two
随机推荐
- Analyse des données tichoo
- Tiktok data analysis platform
- Partage de l'industrie | tichoo Data to attend 2022 Overseas Short video Industry Summit
- [ticoo Information Station] tiktok and Cross - Border E - commerce Weekly Report
- Options d'analyse des données ticoo {infostation}
- Partage de l'industrie | Lu Shidong, PDG de tichoo Data Outlook Global Video e - commerce future Blueprint
- [ticoo Information Station]
- Noël Black Five
- YC Framework version update: v1.0 zero point two
- Lucene分词器
- Gbase 8A slow SQL optimization case
- 微服务系列--聊聊微服务治理中的一些感悟
- 线程池的经典应用场景
- [web security from getting started to giving up] 07_ Insecure file download and upload vulnerability
- 如何落地一款重试组件
- 一起聊聊设计原则
- 大话Redis系列--深入探讨多路复用(上)
- 大话Redis系列--实战案例总结(下)
- 大话Redis系列--实战案例总结(上)
- JVM系列 -- G1与低延迟垃圾收集器
- JVM系列 -- 深入剖析垃圾收集器
- JVM系列--内存回收
- JVM系列--对象内存分配技术分析
- JVM系列--虚拟机的内存管理
- 系统性能瓶颈排查技术总结
- 使用redis的scan指令详解
- 实战--分布式id发号器
- 分布式事务之超详细的Seata实践记录
- TCP time_wait
- IP数据报头部
- 最大基环内向树
- MySQL实战45讲 学习笔记(七)
- MySQL实战45讲 学习笔记(六)
- Android从零开始搭建MVVM架构(1)(1),kotlin匿名函数
- Android事件分发机制五:面试官你坐啊,安卓上机面试题
- There will be two different stages between the breakthrough of science and technology and its real transformation into an inclusive technology
- [leetcode] force deduction 200 Number of islands
- HashShuffleManager
- Altium Designer
- Android construit l'architecture mvvm à partir de zéro (1) (1), fonction anonyme kotlin