- 浏览: 141767 次
- 性别:
文章分类
最新评论
-
HeLinHang:
anyang763 写道 正要用,谢谢!!呵呵,不客气哈!
Android从网上下载文件 -
anyang763:
正要用,谢谢!!
Android从网上下载文件 -
HeLinHang:
48*48可以啊,我试过,没问题,16*16的我还没试过!
改变自己网站在浏览器上的图标 -
化蝶自在飞:
48*48? 太大了吧,一般好像都是16*16的
改变自己网站在浏览器上的图标
ContentProvider的使用
- 博客分类:
- Android
第一步:在AndroidManifest.xml中添加
<provider android:name=".MyContentProvider" android:authorities="cn.edu.mytest"></provider>
第二步:继承ContentProvider
package cn.edu.database; import android.content.ContentProvider; import android.content.ContentUris; import android.content.ContentValues; import android.content.UriMatcher; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.net.Uri; public class MyContentProvider extends ContentProvider{ private MySqliteHelper helper; private static final UriMatcher MATCHER=new UriMatcher(UriMatcher.NO_MATCH);//Uri不匹配码,不匹配返回-1 private static final int PERSONS=1; private static final int PERSON=5; static { //类加载的时候执行,一般用来初始化静态变量 MATCHER.addURI("cn.edu.mytest", "person", PERSONS);//如果匹配这个Uri(content://cn.edu.test/person),返回PERSONS MATCHER.addURI("cn.edu.mytest", "person/#", PERSON); } public MyContentProvider() { helper=new MySqliteHelper(this.getContext(),"test.db",null,1); } @Override public int delete(Uri uri, String selection, String[] selectionArgs) { // TODO Auto-generated method stub SQLiteDatabase db=helper.getWritableDatabase(); int num=0; switch(MATCHER.match(uri)){ case PERSONS: num=db.delete("product", selection, selectionArgs); return num; case PERSON: long rowid=ContentUris.parseId(uri); String where ="id="+rowid; num=db.delete("product", where, selectionArgs); return num; default: throw new IllegalArgumentException("this is unknown uri:"+uri); } } @Override public String getType(Uri uri) { // TODO Auto-generated method stub switch(MATCHER.match(uri)){ case PERSONS: return "vnd.android.cursor.dir/person";//返回是集合类型就是dir case PERSON: return "vnd.android.cursor.item/person"; default: throw new IllegalArgumentException("this is unknown uri:"+uri); } } @Override public Uri insert(Uri uri, ContentValues values) { // TODO Auto-generated method stub SQLiteDatabase db=helper.getWritableDatabase(); switch(MATCHER.match(uri)){ case PERSONS: long rowid=db.insert("product", "name", values);//如果主键值是整形却增加,那么rowid就是主键值 Uri insertUri=ContentUris.withAppendedId(uri, rowid); this.getContext().getContentResolver().notifyChange(uri, null);//发错数据变化通知 return insertUri; default: throw new IllegalArgumentException("this is unknown uri:"+uri); } } @Override public boolean onCreate() {//该方法由操作系统调用,当内容提供者的实例被创建出来以后调用,只会被调用一次 // TODO Auto-generated method stub return false; } @Override public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder) { // TODO Auto-generated method stub return null; } @Override public int update(Uri uri, ContentValues values, String selection, String[] selectionArgs) { // TODO Auto-generated method stub return 0; } }
第三步:在其他的应用中访问ContentProvider
public void accessContentProvider()//该方法可以在其他应用程序中调用 { Uri uri=Uri.parse("content://cn.edu.mytest/person"); ContentResolver reslover=this.getContext().getContentResolver(); ContentValues values=new ContentValues(); values.put("name","zhangsan"); values.put("time", "2012"); reslover.insert(uri, values);//会调用ContentProvider中的insert() } public void accessContentProviderDelete()//该方法可以在其他应用程序中调用 { Uri uri=Uri.parse("content://cn.edu.mytest/person/1"); ContentResolver reslover=this.getContext().getContentResolver(); reslover.delete(uri,null,null); }
CotentProvider:可以把应用中的xml/txt/db/数据对外共享
使用ContentProvider可以统一数据的访问方式
写一个PersonProvider类继承ContentProvider
在配置清单中添加配置信息
<provider android:name=".PersonProvider"
android:authorities="cn.edu.personprovide(标志)>
Uri代表了要操作的数据,Uri主要包含了两部分信息:1、需要操作的ContentProvider,
2、对ContentProvider中的什么数据进行操作
括号代表注释
content:(这个是schema)//cn.edu.personprovide(要操作的主机名或者
authority)/person/10(person/1是路径,1是ID)
ContentProvider的schema已经由Android所规定,schema为:content//主机名(或叫
Authority)用于唯一标志这个Contentprovider,外部调用者可以根据这个标志来找到
它,路径可以用来表示我们要操作的数据,路径构建应根据业务而定
监听ContentProvider中数据的变化
A应用向ContentProvider中添加了一条数据
ContentProvidr发出数据变化通知B应用
在继承ContentProvider的类得inset方法中添加
this.getContext().getContentResolver().notifyChange(uri, null);//发出数据变
化通知
B应用要处于运行状态
在B应用的Activity的中onCreate方法中
this.getContentResolver().registerContentObserver(Uri,true,new
PersonContent());
private class PersonContentObserver extedns ContentObserver{
在onChange方法中()
{
Uri uri=Uri.prase("content://cn.edu.test/product");
getContentResolver.qeruy(uri,null,null,"personid desc limit 1");
}
}
发表评论
-
git常用命令
2016-09-01 15:56 320git init git add 文件名 将删除或者修改的 ... -
实现带上拉和下拉刷新功能的ListView
2013-09-24 20:35 1106package com.test.test; impo ... -
实现带上拉和下拉刷新功能的ListView
2013-09-21 21:12 2package com.test.test; imp ... -
Android中SlidingView的实现
2013-04-27 07:32 1105网上找的,写的不错,感谢作者的分享! -
实现类似微博的BottomBar
2013-04-19 07:36 551主要布局: package com.test.activi ... -
Andorid中动画的使用
2013-04-18 07:48 584//使用动画 Animation myAnimat ... -
HttpPost工具类
2013-02-18 22:06 1152import java.io.IOException; ... -
解析json数据
2013-01-18 22:42 1142// 正确返回数据 // {"error_c ... -
Android ley hash的生成
2013-01-03 21:44 694确保你使用正确的密码 - 用于调试的keystore,默 ... -
Android中屏幕适配和样式主题的使用
2012-04-18 15:19 1008在res文件夹下新建和分 ... -
输入流转换成字符串
2012-04-08 00:49 905private String inputStreamTo ... -
通过HttpURLConnection使用Get和Post方法发送数据
2012-04-08 00:45 2995Get方法发送数据 在Get类中 HttpUR ... -
SQLite数据库
2012-04-02 23:19 697SQLite3支持NULL,INTEGER、REAL、T ... -
SQLite数据库的使用
2012-04-02 23:11 793第一步:继承SQLiteOpenHelper p ... -
Android中单元测试
2012-04-02 23:08 727在AndroidManifest.xml中 在< ... -
解析JSON数据
2012-03-27 23:42 752工具类:JsonUtils package cn ... -
android中SharedPerferences保存数据
2012-03-27 23:28 739SharedPerferences preference ... -
Android中的2D游戏开发
2012-03-27 22:46 1084开发思路: 第一个Activity中,设置游戏全屏,设置初 ... -
Android中向服务器发送数据的Post和Get方法
2012-01-19 18:12 2765下面是Post方法: NameValuePair ... -
android中启动服务
2011-11-20 13:21 695在Activity中 package cn.ed ...
相关推荐
Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。
基础运维技能(下)md格式笔记
Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。
持续更新
PCL-1.14.1-AllInOne-msvc2022-win64+pdb-msvc2022-win64
PC商城系统源码
Defender Control v2.1(win11 禁用defender服务工具).zip
Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。
Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。
Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。
2024年中国超声非侵入式腐蚀检测传感器行业研究报告
【作品名称】:基于知识图谱的问答系统,结合MetaQA知识图谱,用于解决电影领域的问答问题 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 ## 项目目录结构: 1、train_KGE目录下为训练知识图谱嵌入模型的相关代码,包含以下知识图谱嵌入方法: - RotatE - TransE - DistMult - ComplEx 2、KGQA_system目录下包含了问答系统的实现代码,包含以下几个模块: - 知识图谱嵌入模块 - 问题嵌入模块 - 关系预测模块 - 答案生成模块
Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。
ISO 3452-3-2013 无损检测渗透检测第3部分:参考试块.pdf
Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。
目标检测遥感数据集。包括训练集、验证集和测试集共1400张遥感图像及相应标注。已处理为适用yolov5的格式。
Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。
RNN-LSTM(循环神经网络-长短期记忆网络)是一种在序列数据处理中表现出色的深度学习模型,特别擅长于处理和预测时间序列数据。卷积神经网络(CNN)则在图像识别和处理领域有着广泛的应用,以其局部感受野和权重共享特性而闻名。 "RNN-LSTM卷积神经网络Matlab实现"资源为用户提供了一个在Matlab环境中实现这两种网络的机会。该资源包可能包含以下内容: 1. RNN-LSTM网络的Matlab代码实现,允许用户对序列数据进行深入分析和预测。 2. CNN网络的Matlab代码,适用于图像数据的分类和特征提取任务。 3. 示例数据集和使用教程,帮助用户快速理解并应用这些模型。 4. 定制化接口,使用户能够根据自己的需求调整网络结构和参数。 5. 详细的注释和文档,方便用户学习和理解代码的工作原理。 通过这个资源包,研究人员和开发者可以在Matlab平台上,利用RNN-LSTM和CNN的强大功能,进行复杂的数据分析和模式识别任务。无论是在学术研究还是在工业应用中,该资源都能提供强大的支持。
Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。