IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 移动开发 -> Android studio安装 -> 正文阅读

[移动开发]Android studio安装

背景:主要为了解决魔方机器人代码运行问题。

  • 注意点1:虚拟机安装环境的版本要一致。
  • 注意点2:在安装Android Studio之前,需要先安装jdk,如果C盘足够大,可以直接安装在c盘,如果系统正常(系统是原版的,英文的系统用户名、或是被处理较少的情况、网络安全配置较低等),环境变量是不需要设置的,直接安装完成按AS默认的配置已经设置好了。
  • 夜神模拟器速度更快,其模拟的是真机的操作。
  • 【软件配置】JDK+AndroidStudio4.1开发安卓APP环境安装和配置教程详细

  1. JAVA JDK的安装。

我选择的是下面红框中的版本。

真机运行,你用usb接入电脑,打开手机usb调试模式,你就可以在右上角看到你的手机。

可以看到主机的API的版本号,能够正常连接,但是无法在自己的手机上正常运行,可能是API版本问题。

现在的问题是可以用AS自带的模拟器运行"Hello world!"示例程序,不知道RubikCubeRobot程序如何进行测试,也就是不知道对于别人的程序如何快速跑起来,应该从如何打开已有文件,并导入相应配置找突破口。

?2.如何打开并运行别人的Android程序。

  • 关于开源程序版本问题,第一种方式是安装与开源项目相同的版本,第二种方式是修改为与本地是一致的版本。
  • 这是实现主要功能的函数。
  • ?通过新建AS项目,根据新建项目的一些信息去修改开源项目的信息,使其与本地一致。
  • 参考GitHub Java项目导入Android studio需要 add configuration问题

  • 按照这个方式可以发现错误

?

Task 'installDebug' not found in root project 'RubikCubeRobot-master'.

如何成功运行和导入别人的android studio项目?

Unable to determine application id: com.android.tools.idea.run.ApkProvisionException: No outputs for

  1. 切换了一个项目,进行配置文件的修改,问题依旧。

  2. 存在问题,网上下载下来的程序跑不起来。

(1)修改配置文件的过程中,发现根目录下的gradle文件里面的内容classpath没有,是不是android studio版本太新的原因。

这是安装的系统版本,打算降低android studio版本到3.5.3,因为新版本的创建的目录结构和3.53版本不一致,和github程序的代码也不一致。

参考博客: Android studio安装(免配置环境)【版本:3.5.3】

  • 通过这篇博客了解到,“不需要配置jdk,jre环境、官方已经集成了。”,解释的通之前为什么没有安装jdk也能正常运行"Hello world!"示例程序。
  • 官网上只有下载最新版的android Studio链接,没有3.5.3的下载链接,需要自己寻找并安装。

? ? ? ? 参考:Android Studio下载及安装3.5版本(网盘链接密码错误,安装过程可参考)。找到下载地址,卸载之前的版本,并安装3.5版本。安装完后,创建empty activity, Gradle sync同步太慢,解决方案参考:gradle sync太慢的问题。原因是国内访问jcenter太慢,甚至连接不上,就会报各种关于依赖更新失败的错误。修改完后,进行同步:

buildscript {
 
    repositories {
        maven{ url 'http://maven.aliyun.com/nexus/content/groups/public/'}
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:4.0.1'
 
 
        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}
 
allprojects {
    repositories {
        maven{ url 'http://maven.aliyun.com/nexus/content/groups/public/'}
        google()
        jcenter()
    }
}

很快就同步成功了,显示如下:

?更新完之后的变化就是,就是app出现了,可以“run”了。

?添加模拟器设备,自动识别和sdk一致的api。

点击模拟器后“run”按钮,可以正常运行。

?接下来就还回到原来问题,利用新安装的android studio 3.5.3版本跑魔方机器人程序。

(1)解压程序,参考:如何成功运行和导入别人的android studio项目?把文件夹中不必要的文件删掉。

(2)更新根目录下的build.gradle文件内容。

?(3)更新app文件夹下的build.gradle文件里的sdk版本。

?(4)打开gradle\wrapper\gradle-wrapper.properties复制最后一句,去到要导入的项目进行替换。(一致不需要修改)

?(5)”import“ 项目

import后选择第一个,然后下一步,下一步。但是文件目录结构和“Hello world”目录结构不一致。

目录结构如下所示:

?虽然,自动变为可用的状态,还是不能正常运行。

(6)下载另一个rubik项目程序,因为这个结构更加简单,没有OpenCV程序。

?同步的时候,报上面的错误,但是“Hello world”也是这样的设置,是可以正常运行的。不清楚什么原因。

?错误信息

ERROR: Could not find com.android.tools.build:gradle:3.5.3.
Searched in the following locations:
  - http://maven.aliyun.com/nexus/content/groups/public/com/android/tools/build/gradle/3.5.3/gradle-3.5.3.pom
  - http://maven.aliyun.com/nexus/content/groups/public/com/android/tools/build/gradle/3.5.3/gradle-3.5.3.jar
  - https://jcenter.bintray.com/com/android/tools/build/gradle/3.5.3/gradle-3.5.3.pom
  - https://jcenter.bintray.com/com/android/tools/build/gradle/3.5.3/gradle-3.5.3.jar
Required by:
    project :
Add Google Maven repository and sync project
Open File

解决方案:解决 Could not find com.android.tools.build:gradle 问题。

?这里也可以查看和设置SDK的版本。

?上一个解决方案,没有解决,根据错误信息在CSDN中搜:

解决方案2:ERROR: Could not find com.android.tools.build:gradle:3.5.3.

解决方法:在repositories{}内添加google()

?可以正常同步,并且module:app处于激活状态。

(7)run程序出现下面的错误:

错误: 程序包org.twinone.rubiksolver.robot不存在

将robot文件夹放置到与util文件夹同级,可以找到了。

点击run,有警告,可以出来,不能正常运行。

Configuration 'compile' is obsolete and has been replaced with 'implementation' and 'api'.

错误信息如上图所示,搜了一下解决方案,Configuration 'compile' is obsolete and has been replaced with 'implementation。

可以消除第一个warning,但是后面的warning不能消除。

Mapping new ns http://schemas.android.com/repository/android/common/02 to old ns http://schemas.android.com/repository/android/common/01

?参考:Android编译出现Warning: Mapping new ns to old ns的解决方案

  • 是因为gradle版本太旧的问题。

自己的android studio并没有对应的更新工具。

那我们按照前面gradle版本及插件进行更新设置呢?

?按照上表提升gradle及插件版本,发现不能无限制的提升,因为gradle5.6.4及以上需要安装android studio3.6。

?通过上图可以看到android studio的SDK版本和gradle版本是有对应关系的。

  • 是因为配置里面有些api的版本太老了。

修改配置文件,并下载相应的sdk和sdk tools, 然后修改模拟器相应版本,运行报下面的错误。

查找解决方法:Android Studio中虚拟机运行时报错的解决方法,可以运行,没有提示上述错误了,但是app还是跑不起来。

?

?解决方法:换个夜神模拟器试试。

查看了一下,自己的电脑的模拟器应该是正常的,所以可能是程序的问题。在尝试换个程序试试。

不错的开源项目:GitHub - twinone/rubik-robot: Rubik's Cube solver robot

  • 模拟器API的版本可以高于SDK的版本,也就是新手机可以安装之前老的SDK开发的app,要高于对应的sdk的版本。
  • 自己感觉运行之前的程序,认为可能是模拟器的问题,于是生成了apk,并在自己的电脑安装,界面出现的内容比模拟器多,但是也是不正常的,存在闪退情况。所以说在模拟器上能够跑的在手机上也大概率能跑。

(二)另外一种可能是模拟器的问题。

【1】AndroidStudio安装及使用过程中的问题。

  移动开发 最新文章
Vue3装载axios和element-ui
android adb cmd
【xcode】Xcode常用快捷键与技巧
Android开发中的线程池使用
Java 和 Android 的 Base64
Android 测试文字编码格式
微信小程序支付
安卓权限记录
知乎之自动养号
【Android Jetpack】DataStore
上一篇文章      下一篇文章      查看所有文章
加:2022-07-17 16:34:46  更:2022-07-17 16:39:17 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/25 2:32:14-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码