本来是 6.0.6  换成mysql 5.1.14 驱动ok。。。。

将方法 放在 new Thread() 解决。。。。。

只能在主线程绘制ui。。。。

解决办法。。。
子Thread 获取数据后,将绘制ui代码放到Handler.post中执行

代码----

package com.example.administrator.demo1;

import android.os.Handler;
import android.support.v7.app.AlertDialog;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.AttributeSet;
import android.view.View;
import android.widget.FrameLayout;
import android.widget.LinearLayout;
import android.widget.TabHost;
import android.widget.TabWidget;
import android.widget.TextView;
import android.widget.Toast; import org.whm.db.DbUtils; import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.jar.Attributes; public class MainActivity extends AppCompatActivity { //钩子线程
Handler handler = null; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// Example of a call to a native method
//TextView tv = (TextView) findViewById(R.id.tabhost);
// tv.setText(stringFromJNI());
TabHost tabHost = (TabHost) findViewById(R.id.tabhost);
tabHost.setup(); // FrameLayout frameLayout = (FrameLayout) findViewById(R.id.tabcontent);
// int childCount = frameLayout.getChildCount();
LinearLayout l1 = (LinearLayout) findViewById(R.id.tab1);
LinearLayout l2 = (LinearLayout) findViewById(R.id.tab2); handler = new Handler(); //在lambda中尽量不要抛出异常。。。。
new Thread(() -> {
List<Map<String, Object>> list = getData(l1);
handler.post(new Thread(() -> {
darwView(list, l1);
}));
}).start(); TabHost.TabSpec tabSpec1 = tabHost.newTabSpec("tabSpec1").setIndicator("视频").setContent(R.id.tab1);
TabHost.TabSpec tabSpec2 = tabHost.newTabSpec("tabSpec2").setIndicator("直播").setContent(R.id.tab2); tabHost.addTab(tabSpec1);
tabHost.addTab(tabSpec2); } /**
* A native method that is implemented by the 'native-lib' native library,
* which is packaged with this application.
*/
public native String stringFromJNI(); //从远程服务器获取数据
private List<Map<String, Object>> getData(LinearLayout l) {
List<Map<String, Object>> list = null;
try {
list = DbUtils.execQuery("select * from video", null);
} catch (Exception e) {
e.printStackTrace();
Toast.makeText(getApplicationContext(), "发生了错误", Toast.LENGTH_LONG).show();
}
return list; } //绘制ui
private void darwView(List<Map<String, Object>> list, LinearLayout view) {
list.forEach((map) -> {
TextView tv = new TextView(getApplicationContext());
tv.setText((String) map.get("title"));
view.addView(tv);
});
} // Used to load the 'native-lib' library on application startup.
static {
System.loadLibrary("native-lib");
}
}

Android 远程连接数据库。。。。。的更多相关文章

  1. 【基于WinForm+Access局域网共享数据库的项目总结】之篇三:Access远程连接数据库和窗体打包部署

    篇一:WinForm开发总体概述与技术实现 篇二:WinForm开发扇形图统计和Excel数据导出 篇三:Access远程连接数据库和窗体打包部署 [小记]:最近基于WinForm+Access数据库 ...

  2. Oracle数据库的创建以及远程连接(PL/SQL Developer远程连接数据库)

    dbca: 创建数据库 netca: 创建监听程序 netmgr: 配置监听服务(将数据库服务注册到监听器上) netca 与 netmgr 两步可以直接在 ORACLE_HOME/network/a ...

  3. SQL Server 2005如何远程连接数据库?

    SQL Server 2005如何远程连接数据库? 方法/步骤   1 在配置工具中的服务和远程连接的外围应用配置器 --->远程连接-->本地连接和远程连接-->同时使用TCP/I ...

  4. Android远程桌面助手

    很早之前,做过一个<WinCE远程桌面助手>,在没有屏幕或者在调试LCD驱动时,发挥了很大作用,平日开发也是必备.后来还被网友用于处理一些疑难问题,如无法输入开机密码时可通过该工具远程输入 ...

  5. 在本地没有安装Oracle的情况下,使用plsql远程连接数据库

    远程连接数据库的方式不止一种.这里主要写在本地没有安装Oracle的情况下,使用plsql可视化工具远程连接数据库的方式. 一.前提 首先你本地得安装有plsql工具.具体的安装步骤就不多说了. 二. ...

  6. Android远程桌面助手(B1391)

    ARDC(B1391), Download:https://files.cnblogs.com/files/we-hjb/ARDC%28B1391%29_EN.7z Android远程桌面助手(B13 ...

  7. Android远程桌面助手(B1371)

    Android远程桌面助手(B1371),下载:https://files.cnblogs.com/files/we-hjb/ARDC%28B1371%29.7z 1.增加了对超大分辨率4320*21 ...

  8. Android远程桌面助手(B1332)之文件管理器

    Android远程桌面助手除了支持Android界面的显示及控制外,还支持Android文件系统的管理,包括文件的快速上传(push).下拉(pull)和查看(cat). Android远程桌面助手( ...

  9. Android远程桌面助手(B1309)

    修改了窗口缩放的处理,支持Android Car等非常规分辨率的Android设备: 修改了获取Android端软件版本的方法,优化了APK的升级逻辑: 优化了远程输入法功能,支持利用PC端输入法快速 ...

随机推荐

  1. DAY9-python并发之多进程理论

    一.背景知识 顾名思义,进程即正在执行的一个过程.进程是对正在运行程序的一个抽象. 进程的概念起源于操作系统,是操作系统最核心的概念,也是操作系统提供的最古老也是最重要的抽象概念之一.操作系统的其他所 ...

  2. Linux-CentOS 学习的坎坷路 (一) 网络配置篇

    自己学习的地址:http://www.imooc.com/view/175 学到2.8章节,配置IP这一块,妈蛋,他直接跳过了,都不知道怎么配置,无奈,只能Search 先是找到配置IP的方法: ht ...

  3. 前端设置cookie,以及jQuerycookie的使用

  4. MSSQL 当前数据库中已存在用户或角色,SQLServer2008,错误15023,

    原因: sql server中“登录”与“用户”的区别,“登录”用于用户身份验证,而数据库“用户”帐户用于数据库访问和权限验证.登录通过安全识别符 (SID) 与用户关联.将数据库恢复到其他服务器时, ...

  5. 第4章_Java仿微信全栈高性能后台+移动客户端

    基于web端使用netty和websocket来做一个简单的聊天的小练习.实时通信有三种方式:Ajax轮询.Long pull.websocket,现在很多的业务场景,比方说聊天室.或者手机端onli ...

  6. Cocos2d-x 网络编程

    主要介绍内容:Http协议,Socket协议,webSocket协议, Cocos2d-x中的相关类和方法 1 Http协议 HTTP协议也叫超文本传输协议.是互联网广泛使用的通信协议,常用于B/S架 ...

  7. bzoj2134 错选单位

    传送门 题目 Input n很大,为了避免读入耗时太多, 输入文件只有5个整数参数n, A, B, C, a1, 由上交的程序产生数列a. 下面给出pascal/C/C++的读入语句和产生序列的语句( ...

  8. HttpServletResponse和HttpServletRequest详解.RP

    HttpServletResponse,HttpServletRequest详解 1.相关的接口   HttpServletRequest HttpServletRequest接口最常用的方法就是获得 ...

  9. 数据结构 Job

    问题描述 有 n 项工作在等待队列中等待处理,编号为 1-n. 每个工作有个优先级 p.处理机同一时间只能处理一项工作.处理机决定接下来处理哪一项工作的方式为:从队首取出一项工作 x,若等待队列中没有 ...

  10. java全栈day06---数组的练习 冒泡排序

    水仙花练习功能实现 * A: 水仙花练习功能实现 * a: 题目分析 * 明确什么样的数就是水仙花数.水仙花数是指一个3位数(100-999之间),其每位数字立方之和等于该3位数本身. 如153 = ...