androidstudiourl
① android studio 怎么抓去网页媒体资源
首先,也是很重要的一步,就是下载jar包,丢到libs里面
Android studio玩家可以不下载jar包,在Gradle里面加入
dependencies {undefined
compile 'org.jsoup:jsoup:1.9.2'
}复制代码
然后,找到你心仪的网页去抓取数据
这里我们我继续使用美食的网页,然后右键查看网页源码,或者按F12,接下来可以看到一大堆标签:
Paste_Image.png
找到需要的,例如上图这个 “美食天下” ,可以看到 “美食天下” 是放在以
为节点的 中,要获取这个“美食天下”,代码可以这样写:
try {undefined
//从一个URL加载一个Document对象。
Document doc = Jsoup.connect("http://home.meishichina.com/show-top-type-recipe.html").get();
//选择“美食天下”所在节点
Elements elements = doc.select("div.top-bar");
//打印 a标签里面的title
Log.i("mytag",elements.select("a").attr("title"));
}catch(Exception e) {undefined
Log.i("mytag", e.toString());
}复制代码
接下来看一下打印出来的结果:
Paste_Image.png
Jsoup.connect(String url)方法从一个URL加载一个Document对象。如果从该URL获取HTML时发生错误,便会抛出 IOException,应适当处理。
一旦拥有了一个Document,你就可以使用Document中适当的方法或它父类 Element和Node中的方法来取得相关数据。
public class Element extends Node
public class Document extends Element复制代码
很多文章都是说一大堆原理然后放出一个简单的例子,就跟我上面简单的打了一个log一样,然后发现用起来的时候是没那么简单的。为了大家能不看文档也可以直接使用(并且看不懂那一大堆标签也可以用),我决定再举一个例子(其实也就是比上面多打几个log):
下图红色框框是我们要获取的数据,可以看到他们对应的节点就是蓝色圆圈里面的
Paste_Image.png
废话不多说上代码
try {undefined
//还是一样先从一个URL加载一个Document对象。
Document doc = Jsoup.connect("http://home.meishichina.com/show-top-type-recipe.html").get();
//“椒麻鸡”和它对应的图片都在复制代码
中
Elements titleAndPic = doc.select("div.pic");
//使用Element.select(String selector)查找元素,使用Node.attr(String key)方法取得一个属性的值
Log.i("mytag", "title:" + titleAndPic.get(1).select("a").attr("title") + "pic:" + titleAndPic.get(1).select("a").select("img").attr("data-src"));
//所需链接在
中的a标签里面
Elements url = doc.select("div.detail").select("a");
Log.i("mytag", "url:" + url.get(i).attr("href"));
//原料在
中
Elements burden = doc.select("p.subcontent");
//对于一个元素中的文本,可以使用Element.text()方法
Log.i("mytag", "burden:" + burden.get(1).text());
}catch(Exception e) {undefined
Log.i("mytag", e.toString());
}
大功告成,接下来看看log
Paste_Image.png
没有问题!那么教学可以结束了!
注意:
Jsoup.connect(String url)方法不能运行在主线程,否则会报NetworkOnMainThreadException
② android studio怎么访问url
protocol://host:port/resourceName
URL类提供了多个构造方法用于创建URL对象,一旦获得了 URL对象之后,可以调用如下常用方法来访问该URL对应的资源:
1) StringgetFile():获取此URL的资源名。
2) StringgetHost():获取此URL的主机名。
3) StringgetPath():获取此URL的路径部分。
4) Int getPort():获取此URL的端口号。
5) StringgetProtocol():获取此 URL 的协议名称。
例如如下的URL地址:
http://blog.csdn.net/fengyuzhengfan/article/details/38830115
1) StringgetQuery():获取此URL的査询字符串部分。
2) URLConnectionopenConnection():返回一个URLConnection 对象,它表示到URL所引用的远程对象的连接。
③ android studio 新建一个url 为什么要输入网址和其他的东西
URL就是下载链接.有的任务是直接发给下载链接给你.比如FHP.或者是电驴.而BT任务是种子.你只要吧下载链接复制到URL里.然后点确定.如果下载链接能用.就会开始下载.就会显示出.文件大小.下载速度.以及剩余时间.如果只是一个未知文件.没有连接数.也没有速度.就是下载链接有问题.一般情况为复制的链接不对.总新复制下.是不是少复制了字符.或者开头的地方没有选对.网页下载一般为开头.下载形式不同.链接不同.所以只坐参考.一般情况在网页上电链接就可以开始下载.只有给你一个网址的情况是需要你自己新建任务的.所以上述仅作参考!
④ 想问一下在Android studio里面怎么实现显示网络图片,就是输入一个网址,显示一张图片
使用第三方图片加载框架如picasso,使用很简单,以下几步即可完成你的需求。
在app的build.gradle文件中添加依赖
implementation 'com.squareup.picasso:picasso:2.71828'
传入网络图片地址,以及要在哪个ImageView上显示
Picasso.get().load(imageurl).into(mImageView);
很简单,通过以上步骤,就可以完成在Android studio里面怎么实现显示网络图片,就是输入一个网址,显示一张图片。
⑤ android studio创建新项目出现图中问题
这种问题基本都是访问不到造成,改下根目录下的build.gradle文件,在repositories加入
maven {
url 'https://maven.google.com/'
name 'Google'
}
或者
google()
mavenCentral()
maven { url 'https://maven.google.com' }
jcenter()
⑥ android studio怎样配置gradle本地路径
build.gradle
//设置脚本的运行环境
buildscript {
//支持java 依赖库管理(maven/ivy),用于项目的依赖。
repositories {
mavenCentral()
}
//依赖包的定义。支持maven/ivy,远程,本地库,也支持单文件
dependencies {
classpath 'com.android.tools.build:gradle:0.4'
}
}
//声明构建的项目类型,这里当然是android了
apply plugin: 'android'
//设置编译android项目的参数
android {
compileSdkVersion 17
buildToolsVersion "17"
defaultConfig {
minSdkVersion 8
targetSdkVersion 17
}
//Android默认配置
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
resources.srcDirs = ['src']
aidl.srcDirs = ['src']
renderscript.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
}
//测试所在的路径,这里假设是tests文件夹,没有可以不写这一行
instrumentTest.setRoot('tests')
}
//这个是解决lint报错的代码
lintOptions {
abortOnError false
}
/**
* 签名设置
*/
signingConfigs {
myConfigs {
storeFile file("签名文件地址")
keyAlias "..."
keyPassword "..."
storePassword "..."
}
}
/**
* 混淆设置
*/
buildTypes {
release {
signingConfig signingConfigs.myConfigs
runProguard true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
/**
* 渠道打包(不同包名)
*/
proctFlavors {
qqqq {
applicationId = '包名'
}
hhhhh {
applicationId='包名'
}
}
}
/**
* .so文件的导入
*/
task NativeLibs(type: Copy) {
from fileTree(dir: 'libs', include: 'armeabi/*.so') into 'build/lib'
}
tasks.withType(Compile) {
options.encoding = "UTF-8"
}
tasks.withType(Compile) {
compileTask -> compileTask.dependsOn NativeLibs
}
clean.dependsOn 'cleanCopyNativeLibs'
tasks.withType(com.android.build.gradle.tasks.PackageApplication) { pkgTask ->
pkgTask.jniFolders = [new File(buildDir, 'lib')]
}
//依赖库
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
}
gradle 作为构建工具,能够很方便的使用本地jar包,以下为使用的代码块。
ependencies {
//单文件依赖
compile files('libs/android-support-v4.jar')
//某个文件夹下面全部依赖
compile fileTree(dir: 'libs', include: '*.jar')
}
android {
}
gradle 同时支持maven,ivy,由于ivy我没用过,所以用maven 作为例子,以下为代码块:
repositories {
//从中央库里面获取依赖
mavenCentral()
//或者使用指定的本地maven 库
maven{
url "file://F:/githubrepo/releases"
}
//或者使用指定的远程maven库
maven{
url "远程库地址"
}
}
dependencies {
//应用格式: packageName:artifactId:version
compile 'com.google.android:support-v4:r13'}
android {
}
对于项目依赖 android library的话,就不是依赖一个jar,那么简单了,在这里需要使用gradle mulit project 机制。在过去,android library并没有一个很好的包管理方式,简单来说,在gradle出现以前,官方并没有一种用于管理android library 依赖包的方式,一般我们都是直接下载别人的android library project 源码进行集成,而对于第三方的android-maven-plugin 用的是apklib 格式。
而现在,官方终于推出一种android library的打包格式,扩展名为*.aar。前面提到,目前android gradle插件并不支持本地直接使用*.aar文件,不过,支持包管理库的引用方式,下面,我为大家说一下,怎么对android library 发布使用。
打包android library
对android library 进行打包直接在library项目下面使用gradle build 即可,然后,你就会在 build/libs 目录下看到两个*.aar文件,一个debug包用的,一个是release 下用的,看个人需求使用,这里我们用的是release 版本的 .aar 文件。
⑦ Android studio怎么设置HTTP协议代理
工具:
android studio
1、打开了android studio的开发代码工具之后,进行到界面中,进行点击菜单中的“file”的选项菜单;
2、就会弹出了下拉的菜单中进行选中“setting”的菜单;
3、就会弹出了settings的窗口中,进行选中列表菜单中的appearance&behavior的选项;
4、然后就会弹出了下拉列表中进行选中system settings中后进行选中http proxy的选项;
5、进入到了http proxy的界面中之后,进行选中manual proxy configuration的选项后;
6、这样就可以在host name中进行输入代理软件的链接地址信息,及端口号port number,然后进行点击OK
⑧ AndroidStudio的app远程连接数据库及源码
String url = "jdbc:oracle:thin:@ip地址:端口:数据库名字";// 地址,
你的app需要与数据库在同一网段并且数据库没有防火墙限制
⑨ android studio 中volley为什么都是锁的
个人之前一直以为android studio是ADT bundle中那个studio,理论上是的,不过windows上android studio是基于Eclipse的?估计是我下载的版本不对。今天单独下了mac版本的android studio,整个风格和eclipse完全不一样,人家是基于intellij的IDE开发出来的。android studio的下载地址在这里,苦逼的网络,只能从这里下了。
第一次打开android studio的时候会让你选择如何操作,比如新建android工程。和eclipse不同的是,android studio新建工程的时候可能会更新SDK。这里可能就陷入一个“死循环”,更新SDK需要代理网络,但是还没进入主界面……幸好在创建工程的界面菜单中可以设置网络,这样就可以继续创建工程了。
由于我今天想要尝试下volley,传说中的android网络库,但是在怎么把volley纳入自己工程上弄了好久。后来按照这篇文章的步骤打包,把volley.jar移动到当前工程libs目录中,添加为依赖后就可以用了。至于在苦逼的网络下如何git clone volley的库,可以考虑从volley的master分支上下载tgz包。
下面才是如何使用volley的正题,个人分为以下几部分:
常规使用
取消任务
单例
自定义RequestQueue和Request一般不大用到,有需要可以看这里的文章。下面主要说下常规使用。取消任务主要是一个方法RequestQueue#cancelAll,单例不是volley专属的内容,Java的单例模式一般人太熟悉了。
String url = "http://example.com";
StringRequest request = new StringRequest(Request.Method.GET, url, new Response.Listener() {
@Override
public void onResponse(String response) {
mTvMain.setText(response.substring(0, 100));
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError volleyError) {
mTvMain.setText("Error Occurred");
}
});
mRequestQueue.add(request);
代码mRequestQueue是RequestQueue的实例。主要流程是创建Request之后加入RequestQueueQueue即可。Request除了StringRequest还有ImageRequest,JsonRequest等等。
最后放到模拟器上看看结果吧,比自己直接写AndroidHttpClient代码要方便很多。