前言

github是一个很好的社区,有时候呢,我们从android下载项目下来无法build,有很多原因,比如说库不见了,或者说自己没有安装过支持的api版本等,会遇到各种问题。

在此总结一下。

问题与解决

包下载不下来

在中国网络上有一个特点,就是有一个叫做红色长城的东西,很多人也叫黑色长城,不同叫法观点不同哈。总之呢,在国内要想去国外溜达上网,就需要爬过去。

如果公司支持国际漫游(跟国内运营签了另外的协议的),当然就不需要了。但是呢,支持国际漫游的公司还有it 部门这个大坑,也不是想访问就能的。所以很多人使用shadowsock,需要一个代理,这样就可以愉快的访问了。

当我们使用了shadowsock这种代理后,依然在根目录下需要下的builde.gradle配置,以便我们获取maven库。

repositories {
jcenter()
maven {
url 'https://maven.google.com/'
name 'Google'
}
}
allprojects {
repositories {
jcenter()
maven {
url 'https://maven.google.com/'
name 'Google'
}
}
}

有些人就疑问了,为什么使用google()呢?这样不就ok呢?

在这里主要是有些低版本不支持,有下列要求:

Gradle 4.0 and later
Android Studio 3.0 and later
Gradle plugin for android 3.0 and later

所以呢,google()还是不要去趟浑水了。

当然,如果没有代理的,可以使用下面这个地址:

https://dl.google.com/dl/android/maven2/

Could not find method leftShift() for arguments

为什么会出错呢?因为android studio 做的太智能了,一进去就会问你需不需要gradle 这样贴心的话语。

虽然自己还能看懂英文,但是呢,谁都有心情不好和手残的时候,那么难道我还改回去。当然不了,一条路走到黑。

注:这个改动是在gradle5.0改的,那么聪明如你,改回到gradle5.0之前肯定是一种方式了。

直接shilft+ ctrl+f 全局搜索一波,对gradle文件过滤,把<<,全改了。其实呢,说全改,其实我们心里都有数,就几个文件。

task helloword <<{
println 'xxx xxx xx'
}
task helloword  {
doLast{
println 'xxx xxx xx'
}
}

去了<< 也许,但是我们要注意的是<< 代表输出的意思。

The minSdk version should not be declared in the android manifest file. You can move the version from the manifest to the defaultConfig in the build.gradle file.

在这个问题呢,还是历史版本的问题。这这里我指的历史版本不只是说别人写的项目,还可能比如使用cordova框架啦,你需要一个低级版本的cordova 框架,但是你又需要一个高版本的gradle,这样是你build更快,甚至打包效果更好。

解决方法:

点击提示下的 open file,然后删除即可,对了不要忘记去build.gradle 中声明最低版本,这很重要。

[TAG] Failed to resolve variable '${junit.version}'

这种情况呢,是junit 没下载下来,我们可能有时候呢,去rebuild 一下又成功了。好吧,这就是网络问题了。

后续

忘了,遇到写写。

android 当在github下载一个android项目后的更多相关文章

  1. Android Studio导入github下载的工程

    现在从github上面现在的项目大部分都是Android Studio工程,那么问题来了,从github上面down一个工程下来,怎么导入android studio呢? 对刚从eclipse转And ...

  2. android studio学习----Android Studio导入github下载的工程--替换方法

    http://www.cnblogs.com/liuling/p/2015-9-16-01.html 这种方法是可行的,主要是先自己创建一个project ,然后把没有的文件夹都复制过去就OK了,特别 ...

  3. 从github下载的vue项目启动宝Cannot Get错误

    从github下载的vue项目启动宝Cannot Get错误,网上参考出现该错误来源很多,这里先总结遇到的第一个解决方法. 参考地址: https://www.cnblogs.com/anns/p/7 ...

  4. 使用 Android Studio 开发工具创建一个 Android 应用程序,显示一行文字“Hello Android”,并将应用程序的名称更改为“FirstApp”。

    需求说明: 使用 Android Studio 开发工具创建一个 Android 应用程序,显示一行文字"Hello Android",并将应用程序的名称更改为"Firs ...

  5. 使用 Android Studio 开发工具创建一个 Android 应用程序,并在 Genymotion 模拟器上运行

    需求说明: 使用 Android Studio 开发工具创建一个 Android 应用程序,并在 Genymotion 模拟器上运行 实现步骤: 打开 Android Studio,创建一个 Andr ...

  6. Android Studio导入github下载的project和module

    前言:我们以前eclispe时代, 经常都是跑到github浏览第三方开源资源,然后下载下来,运行一下sample之类的,学习没有接触的第三方安卓库,但是到了Android Studio,在githu ...

  7. 0.[WP Developer体验Andriod开发]之从零安装配置Android Studio并编写第一个Android App

    0. 所需的安装文件 笔者做了几年WP,近来对Android有点兴趣,尝试一下Android开发,废话不多说,直接进入主题,先安装开发环境,笔者的系统环境为windows8.1&x64. 安装 ...

  8. 【Android】用Cubism 2制作自己的Live2D——android sdk样本的下载与Android studio编译!

    前言- 在浏览Live2d说明书的时候我无意中发现了一个有趣的东西,就是android sdk中居然自带动态壁纸!那就让我们来试试吧,说明书此页的网址连接——中文版||日文版 Android开发所必需 ...

  9. 0.[Andriod]之从零安装配置Android Studio并编写第一个Android App

    0. 所需的安装文件 笔者做了几年WP,近来对Android有点兴趣,尝试一下Android开发,废话不多说,直接进入主题,先安装开发环境,笔者的系统环境为windows8.1&x64. 安装 ...

  10. LeadTools Android 入门教学——运行第一个Android Demo

    LeadTools 有很多Windows平台下的Demo,非常全面,但是目前开发手机应用的趋势也越来越明显,LeadTools也给大家提供了10个Android的Demo,这篇文章将会教你如何运行第一 ...

随机推荐

  1. RocketMQ(10) 消息类型

    一.普通消息 1. 消息发送方式分类 Producer对于消息的发送方式也有多种选择,不同的方式会产生不同的系统效果. 同步发送消息: 同步发送消息是指,Producer发出⼀条消息后,会在收到MQ返 ...

  2. RocketMQ(2) 消息的生产和存储

    ## 一 : 消息的生产 1. 消息的生产过程 Producer在发送消息时可以将消息写入到指定topic的某Broker中的某Queue中,其经历了如下过程: Producer发送消息之前,会先向N ...

  3. Java 关于继承小练习2

    1 package com.bytezero.inherit2; 2 3 4 public class KidsTest 5 { 6 public static void main(String[] ...

  4. 我和我的DBA之路

    这几天,突然想写写这些年的工作总结,毕业至今快20年的回顾. 想到20年前,在做毕业设计的时候,当时是学的机械工程类专业,因为带毕业设计的老师兼职企业有个门户网站的需求,而我又会做点网站设计,带的老师 ...

  5. 使用 Docker 部署 Next Terminal 轻量级堡垒机

    1)Next Terminal 介绍 官网:https://next-terminal.typesafe.cn/ GitHub:https://github.com/dushixiang/next-t ...

  6. MacOS安装gRPC C++

    从源码安装gRPC C++ 环境准备 $ [sudo] xcode-select --install $ brew install autoconf automake libtool shtool $ ...

  7. [MAUI] 混合开发概念

    ​ 混合开发的概念是相对与原生开发来说的:App不直接运行原生程序,而是在原生程序中运行一个Web程序,原生程序中包含Web运行时,用于承载Web页面.暂且将原生应用称之为Web容器,Web容器应该能 ...

  8. C++学习笔记之进阶编程

    目录 进阶编程 STL(Standard Template Library) 容器(container) 仿函数(functor) 算法(algorithm) transform 查找 全排列 迭代器 ...

  9. 基于泰凌微2.4G私有协议TLSR8359的遥控器解决方案之源码解析

    一 2.4G私有协议 在无线遥控和远距离无线通信领域,2.4G私有协议有着天然的优势.成本低,发射功率大,功耗低.这让它在远距离无线遥控飞机,遥控车等领域有着广泛的应用.基于TLSR8359市场上广泛 ...

  10. VT-X的学习历程(一)

    学习的目标 就是如何实现一个简单VT框架并拦截指令的调用以及EPTHOOK的实现. 大概的流程 检测是否允许开启VT. a. 我们可以从白皮书的24.6 DISCOVERING SUPPORT FOR ...