资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

android获取数据,android获取手机的基本信息

android中在怎么获取数据库数据

android读取数据库可以使用sqlite一些api进行读取,实例如下:

创新互联长期为千余家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为铁西企业提供专业的成都网站设计、做网站,铁西网站改版等技术服务。拥有10年丰富建站经验和众多成功案例,为您定制开发。

/**

* 查找一条数据

* @param uid

*/

public User find(Integer uid){

SQLiteDatabase db=dbOpenHelper.getReadableDatabase(); //创建数据库辅助类

Cursor cursor =db.rawQuery("select * from user where uid=?", new String[]{uid.toString()}); //创建一个游标

if(cursor.moveToFirst()){ //循环遍历查找数组

int uid2=cursor.getInt(cursor.getColumnIndex("uid"));

String uname=cursor.getString(cursor.getColumnIndex("uname"));

String uaddress=cursor.getString(cursor.getColumnIndex("uaddress"));

User user=new User();

user.setUid(uid2);

user.setUname(uname);

user.setUaddress(uaddress);

return user;

}

cursor.close();

return null;

}

android 怎么读取数据库中的数据

android读取数据库可以使用sqlite一些api进行读取,实例如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

/**

* 查找一条数据

* @param uid

*/

public User find(Integer uid){

SQLiteDatabase db=dbOpenHelper.getReadableDatabase(); //创建数据库辅助类

Cursor cursor =db.rawQuery("select * from user where uid=?", new String[]{uid.toString()}); //创建一个游标

if(cursor.moveToFirst()){ //循环遍历查找数组

int uid2=cursor.getInt(cursor.getColumnIndex("uid"));

String uname=cursor.getString(cursor.getColumnIndex("uname"));

String uaddress=cursor.getString(cursor.getColumnIndex("uaddress"));

User user=new User();

user.setUid(uid2);

user.setUname(uname);

user.setUaddress(uaddress);

return user;

}

cursor.close();

return null;

}

【Android Kotlin】关于使用Http来获取数据的基本套路

1.新建一个URI.java用来存放网络请求地址和端口地址

public class URI {

public static final String LOGIN = "192.168.2.1/api/login";

}

2.新建界面TestActivity.java

3.编写界面,由于只用于测试用,所以在这只写了TextView,具体需求看自己。

xmlns:app=""

xmlns:tools=""

android:layout_width="match_parent"

android:layout_height="match_parent"

tools:context=".TestActivity"

android:id="@+id/tv_one"

android:layout_width="0dp"

android:minHeight="48dp"

android:layout_height="wrap_content"

android:layout_weight="1"

android:gravity="center"

tools:text="数据"/

android:id="@+id/tv_two"

android:layout_width="0dp"

android:minHeight="48dp"

android:layout_height="match_parent"

android:layout_weight="1"

android:gravity="center"

tools:text="数据"/

android:id="@+id/tv_three"

android:layout_width="0dp"

android:minHeight="48dp"

android:layout_height="match_parent"

android:layout_weight="1"

android:gravity="center"

tools:text="数据"/

android:id="@+id/tv_fore"

android:layout_width="0dp"

android:minHeight="48dp"

android:layout_height="match_parent"

android:layout_weight="1"

android:gravity="center"

tools:text="数据"/

android:id="@+id/tv_five"

android:layout_width="0dp"

android:minHeight="48dp"

android:layout_height="match_parent"

android:layout_weight="1"

android:gravity="center"

tools:text="数据" /

效果图如下:

4.编写实体类TestBean

这个根据所给的Json数据来写

5.编写适配器TestAdapter(我这里用的是BaseQuickAdapter万能适配器)

class TestAdapter :BaseQuickAdapter实体类, BaseViewHolder(你要传数据界面) {     override fun convert(helper: BaseViewHolder, item: 实体类) {

helper.setText(控件名,item.要放的数据)

.setText(控件名,item.要放的数据)

.setText(控件名,item.要放的数据)

.setText(控件名,item.要放的数据)

.setText(控件名,item.要放的数据)

}

}

6.最主要的一步,编写Activity.java

首先要初始化,由于kotlin不需要初始化控件,所以我们只需要初始化我们的适配器

mAdapter = ManagementAdapter()

然后我们要获取数据(我这里用了一下RxJava的东西)

fun getManagerfee(){

NetWork.getEnquiryDetailsApi().getManagerPriceList(inquiryId).async(this).subscribe({

it.isSuccess.yes {

mAdapter.setNewData(it.data)

}.otherwise {

onRequestFail(it.code, it.message)

}

}

}

7.最后基本上如果需要从上一个界面获取数据,需要从上一个接口带过来一个id的字段,比如我这个从上一个界面带过来的inquiryId,我们就需要写一下object

companion object {

private const val EXTRA_PARAM_ID ="inquiry_id"

fun launch(context: Context, inquiryId: String) {

context.startActivity(Intent(context, ManagePreActivity::class.java).apply {

        putExtra(EXTRA_PARAM_ID, inquiryId)

})

}

}

Android获取文件类型

文件命名后缀如.jpg、.png等等一般即为文件类型,但有些时候不能保证文件后缀名一定有效,所以尝试将后缀转换成对应mime类型,方法如下:

如果转换结果返回为nul,则可以认为后缀名不是有效的文件类型。

此方法实际是由查找对应的ContentProvider来获取文件类型,会先在本进程内查找,失败后通过ActivityManagerService跨进程查找。

首先要设置数据源,常用的数据设置有两种方式:

无论哪种设置方式,其本质都是获取文件描述符FileDescriptor,然后调用以下方法:

设置之后直接调用extractMetadata方法,传入keyCode为MediaMetadataRetriever.METADATA_KEY_MIMETYPE,即可得到文件的mime类型。

这个方法是JAVA 1.6版本以后提供的,但是在Android中需要Api 26以上才可以使用,方法中的参数path可以使用File内的toPath()方法获取。

5.1. 使用java中URLConnection提供的“类型猜测”方法查询:

此方法与方法一查询mime方法本质相同,最终都会调用MimeUtils.guessMimeTypeFromExtension方法。MimeUtils中提前缓存了后缀与mime类型的映射关系(先尝试从特定的用户表中加载,如果失败则加载默认的内置表),于是根据传入的后缀查询对应mime。

先读取数据流的前16个字节,根据这16个字节可以判断出绝大部分的文件类型。不过URLConnection下的这个方法只提供网络传输中常用的几种类型判断。

5.2. 根据前16个字节进行判断

以下只列出部分常用类型的应对关系,更多类型可以搜索“根据文件头获取文件类型”查询:

如果确定可转为Bitmap,可以直接使用BitmapFactory.Options中的outMimeType属性。

github:

依赖版本: 'io.github.firstletterz:tool-file:0.0.2'

2021-08-10

android怎么直接获取数据库数据

android读取数据库可以使用sqlite一些api进行读取,实例如下:

/**

* 查找一条数据

* @param uid

*/

public User find(Integer uid){

SQLiteDatabase db=dbOpenHelper.getReadableDatabase(); //创建数据库辅助类

Cursor cursor =db.rawQuery("select * from user where uid=?", new String[]{uid.toString()}); //创建一个游标

if(cursor.moveToFirst()){ //循环遍历查找数组

int uid2=cursor.getInt(cursor.getColumnIndex("uid"));

String uname=cursor.getString(cursor.getColumnIndex("uname"));

String uaddress=cursor.getString(cursor.getColumnIndex("uaddress"));

User user=new User();

user.setUid(uid2);

user.setUname(uname);

user.setUaddress(uaddress);

return user;

}

cursor.close();

return null;

}

android怎么获取服务器数据

一:基于Http协议获取数据方法。二:基于SAOP协议获取数据方法,

这篇文章主要是将关于使用Http协议获取服务器端数据,这里我们采取的服务器端技术为java,框架为Struts2,或者可以有Servlet,又或者可直接从JSP页面中获取数据。

那么,接下来我们便开始这一路程:

首先:编写服务器端方法,我这里采用的MVC框架是Struts2,目的很单纯,就是为了以后做个完整的商业项目,技术配备为:android+SSH。当然,篇幅有限,我这里就直接用Strtus2而已。

服务器端:新建WebProject ,选择Java ee 5.0.

为了给项目添加Struts2的支持,我们必须导入Struts2的一些类库,如下即可(有些jar包是不必的,但是我们后来扩展可能是要使用到的,就先弄进去):

1: xwork-core-2.2.1.1.jar

2: struts2-core-2.2.1.1.jar

3: commons-logging-1.0.4.jar

4: freemarker-2.3.16.jar

5: ognl-3.0.jar

6: javassist-3.7.ga.jar

7:commons-ileupload.jar

8:commons-io.jar

9:json-lib-2.1-jdk15.jar 处理JSON格式数据要使用到

10:struts2-json-plugin-2.2.1.1.jar 基于struts2的json插件

以上的jar包,需要放在WebRoot/WEB-INF/lib目录下

然后在web.xml文件中敲下:

View Code

?xml version="1.0" encoding="UTF-8"?

web-app version="2.5"

xmlns=""

xmlns:xsi=""

xsi:schemaLocation="

"

!-- 定义Struts2的核心控制器:FilterDispatcher --

filter

!-- 定义核心Filter的名称 --

filter-namestruts2/filter-name

!-- 定义Filter的实现类 --

filter-classorg.apache.struts2.dispatcher.FilterDispatcher/filter-class

/filter

filter-mapping

filter-namestruts2/filter-name

url-pattern/*/url-pattern

/filter-mapping

welcome-file-list

welcome-fileindex.jsp/welcome-file

/welcome-file-list

/web-app

然后编写struts.xml文件,并放在WebRoot/WEB-INF/lib目录下:如下代码:

View Code

?xml version="1.0" encoding="UTF-8"?

!DOCTYPE struts PUBLIC

"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"

""

struts

!-- setting encoding,DynamicMethod,language

constant name="struts.custom.i18n.resources" value="messageResource"/constant

--

constant name="struts.i18n.encoding" value="UTF-8"/constant

constant name="struts.enable.DynamicMethodInvocation" value="true"/constant

!-- add package here extends="struts-default"--

package name="dongzi" extends="json-default" !--需要将struts-default改为json-default--

!-- setting action --

action name="login" class="com.dongzi.action.loginAction" method="login"

result type="json"/result !--返回值类型设置为json,不设置返回页面--

/action

/package

/struts

配置好后,我们再根据action标签内容来编写action。方法为method对应的login,类名为loginAction,

注意:包继承为:json-default ,输出结果类型为json

如下:

View Code

public class loginAction extends ActionSupport implements

ServletRequestAware,ServletResponseAware {

/**

*

*/

private static final long serialVersionUID = 1L;

HttpServletRequest request;

HttpServletResponse response;

public void setServletRequest(HttpServletRequest request) {

this.request=request;

}

public void setServletResponse(HttpServletResponse response) {

this.response=response;

}

public void login(){

try {

//HttpServletRequest request =ServletActionContext.getRequest();

// HttpServletResponse response=ServletActionContext.getResponse();

this.response.setContentType("text/html;charset=utf-8");

this.response.setCharacterEncoding("UTF-8");

if(this.request.getParameter("username").equals("123456")){

this.response.getWriter().write("真的很奇怪,日本人!");

}else if(this.request.getParameter("username").equals("zhd")){

this.response.getWriter().write("没有错,我就是东子哥!");

}else{

this.response.getWriter().write("我就是东子哥!");

}

//将要返回的实体对象进行json处理

// JSONObject json=JSONObject.fromObject(this.getUsername());

//输出格式如:{"id":1, "username":"zhangsan", "pwd":"123"}

// System.out.println(json);

// this.response.getWriter().write(json.toString());

/**

JSONObject json=new JSONObject();

json.put("login", "login");

response.setContentType("text/html;charset=utf-8");

System.out.println(json);

byte[] jsonBytes = json.toString().getBytes("utf-8");

response.setContentLength(jsonBytes.length);

response.getOutputStream().write(jsonBytes);

**/

/**

JSONObject json=new JSONObject();

json.put("login", "login");

byte[] jsonBytes = json.toString().getBytes("utf-8");

response.setContentType("text/html;charset=utf-8");

response.setContentLength(jsonBytes.length);

response.getOutputStream().write(jsonBytes);

response.getOutputStream().flush();

response.getOutputStream().close();

**/

} catch (Exception e) {

e.printStackTrace();

}

// return null;

}

}


当前题目:android获取数据,android获取手机的基本信息
路径分享:http://cdkjz.cn/article/dscdpoj.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220