365beat-beat365官方网站手机版-365账号无法登陆

Android-Studio配置运行小米便签

1.下载Android Studio官网地址:Android Studio 安装教程:Android Studio 安装教程 默认下载即可,选定好SDK的下载地址即可。 1.1配置 Gradle 地址(建议)在下

Android-Studio配置运行小米便签

1.下载Android Studio官网地址:Android Studio

安装教程:Android Studio 安装教程

默认下载即可,选定好SDK的下载地址即可。

1.1配置 Gradle 地址(建议)在下载之后,可以配置一下Gradle的地址,这样在后续import项目时,出错后,方便修改。

在Settings -> Build -> Build Tools -> Gradle中可以修改Gradle的仓库地址

2.项目 clone小米便签项目仓库地址: 小米便签

git clone 或者直接直接下载压缩包都可

3. import 项目此处不能新建项目,直接把文件放入Android Studio,会有你意想不到的报错~

使用import的方式,通过Gradle 的方式编译整个项目。

在sync的过程中,会有各种各样、莫名其妙的报错,部分报错的解决办法,见第5部分的报错解决

出现如下图所示即为,sync成功

3.1 Gradle 项目gradle是基于Apache Maven概念的项目自动化构建开源工具。他是使用一种基于groovy的 特定领域语言来声明项目配置,抛弃了基于XML的各种繁琐配置。

gradle都是基于groovy的,但是由于其提供了一整套DSL,所以在开发gradle脚本时几乎脱离了groovy的感知。我们在这里将gradle当做一个独立的部署工具。

工作流程:

解析setting.gradle文件然后去遍历根目录,检查子项目是否满足规定。

解析每个子project的gradle,然后根据Task去构建项目之间的有向无环图。

直接执行,涉及到刷新下载依赖,以及build构建发布包等等。

4.创建虚拟机,运行项目在sync结束后,点击右上角的build锤子按钮编译整个项目

出现如下图所示,即为编译成功

创建虚拟机,选择Device Manager

点击create device -> Pixel 2

选择好镜像,下载即可完成虚拟机的配置

运行项目即可看到小米便签

5.报错解决5.1 Gradle xxxxx not found 或者 Connect time out修改build.gradle:notes(全局的配置文件),添加google() 用于加速下载,’classpath’修改为所需要的版本

1234567891011121314151617// Top-level build file where you can add configuration options common to all sub-projects/modules.buildscript { repositories { google() jcenter() } dependencies { classpath 'com.android.tools.build:gradle:8.1.3' }}allprojects { repositories { google() jcenter() }}

修改 gradle-wrapper.properties,distributionUrl改为自己需要的版本,将-all 同意修改为-bin

123456#Mon Nov 27 16:26:33 CST 2023distributionBase=GRADLE_USER_HOMEdistributionPath=wrapper/distsdistributionUrl=https\://services.gradle.org/distributions/gradle-8.0-bin.zipzipStoreBase=GRADLE_USER_HOMEzipStorePath=wrapper/dists

修改后,再次sync,若仍然报错not found ,则去gradle下载,找到自己对应的版本,下载后,放入你上面配置的gradle地址下\gradle\wrapper\dists下对应的gradle文件夹下面,将其中的其他文件删除,放入下载好的压缩包即可。

若再次报错,检查自己之前使用idea破解版时,使用的脚本,这些脚本执行后,会生成带中文路径的环境变量,导致报错。执行uninstall脚本文件,然后再次sync,此时大概率是没有问题了。

5.2 版本不匹配版本不匹配问题在报错信息提示中,有明确的指示

1.JDK版本与Gradle不匹配按照需要的版本修改jdk或者gradle,详见gradle官方配置文档。(推荐修改JDK)

2.compileSdkVersion与targetSdkVersion版本不一致设置为一致即可

1234567891011121314151617181920212223242526apply plugin: 'com.android.application'android { namespace "net.micode.notes" useLibrary 'org.apache.http.legacy' compileSdkVersion 30 buildToolsVersion "34.0.0" defaultConfig { applicationId "net.micode.notes" minSdkVersion 14 targetSdkVersion 30 } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt' } }}dependencies { implementation files('D:\\Maven\\http-client\\httpclient-4.5.5.jar')}

5.3 httpclient报错此处报错问题是由于项目中缺少httpclient依赖,去maven仓库下载jar包,导入即可。

Files -> Project Structure -> Dependency

5.4 switch case中 R.id 报错将普通Android工程转成Library工程后,常量发生变化

1234//Library工程的R文件 public static int gift_pop_hide=0x7f04000f;//普通工程的的R文件public static final int abc_fade_in=0x7f040000;

由于Library工程的可以包含资源文件,编译会生成R文件,多个Library中可能出现id冲突的问题。为了解决这个问题谷歌将Library工程R文件才从静态常量变为非常量。

然而switch语句的case中 必须是常量,而此时的R.id.xxx为非常量,所以报错了。

修改switch语句为if else语句。Android studio中提供快速切换方法。如下:

选中“switch”,ALt+Enter同时选中,弹出对话框,选择“Replace ‘switch’ with ‘if’”

5.5 Cannot resolve method ‘setLatestEventInfo’ in ‘Notification’原因:在低于API Level 11版本,也就是Android 2.3.3以下的系统中,setLatestEventInfo()函数是唯一的实现方法;而在高于API Level 11的版本中setLatestEventInfo()函数已经被弃用了,于是我们需要根据现有的Android版本进行相应地重写该函数

1234567891011121314151617181920212223private void showNotification(int tickerId, String content) { PendingIntent pendingIntent; if (tickerId != R.string.ticker_success) { pendingIntent = PendingIntent.getActivity(mContext, 0, new Intent(mContext, NotesPreferenceActivity.class), 0); } else { pendingIntent = PendingIntent.getActivity(mContext, 0, new Intent(mContext, NotesListActivity.class), 0); } Notification.Builder builder = new Notification.Builder(mContext) .setAutoCancel(true) .setContentTitle(mContext.getString(R.string.app_name)) .setContentText(content) .setContentIntent(pendingIntent) .setWhen(System.currentTimeMillis()) .setOngoing(true); Notification notification=builder.getNotification(); mNotifiManager.notify(GTASK_SYNC_NOTIFICATION_ID, notification); }

5.6 小米菜单栏无法显示只需修改res/values/styles.xml最后一部分如下即可。

1234

← 上一篇: 精斗云和智慧记区别是什么?有哪些优缺点?哪个好用?
下一篇: 茅山道士异界游 →

相关推荐

DNF工作室:教你了解检测机制,避免封号和制裁

DNF工作室:教你了解检测机制,避免封号和制裁

相信很多人都经历过无缘无故的制裁和封号,明明没有使用外挂! 首先腾讯的这一款DNF游戏,他的检测几乎不会针对个人,都是大数据检测,除

东莞通怎么充值公交卡

东莞通怎么充值公交卡

东莞通怎样充值公交卡 东莞通是东莞市民日常出行的重要工具,方便了市民在城市中的交通出行。为了让市民出行更加省心快捷,东莞市在过去

王者荣耀李白新皮肤谪仙醉月什么时候出来

王者荣耀李白新皮肤谪仙醉月什么时候出来

王者荣耀李白新皮肤谪仙醉月什么时候出来: 答:2024年9月30日。 PS:上线周期是2024年9月30日0点~2024年11月30日23点59分 1、王者荣耀李白的新皮肤

十大最耐用电瓶车电池(什么牌子的电瓶好最耐用)

十大最耐用电瓶车电池(什么牌子的电瓶好最耐用)

本文目录什么牌子的电瓶好最耐用电动车电池什么牌子的最耐用电动车电池什么牌子好,哪款耐用什么牌子的电瓶好最耐用最耐用的蓄电池牌子

为什么说小丑很可怜

为什么说小丑很可怜

小丑的背景和形象 小丑是一种在娱乐、文化和艺术领域中常见的角色,通常以滑稽可笑的外貌和表现为特点。他们的形象通常是穿着花哨、颜色

蓝钻之梦酒多少钱一瓶,蓝钻之梦酒价格?

蓝钻之梦酒多少钱一瓶,蓝钻之梦酒价格?

1. 蓝钻之梦酒多少钱一瓶 蓝钻之梦酒是一款非常受欢迎的名贵酒品,其高端的口感和品质备受消费者追捧。然而,作为一款高档次的酒品,蓝钻