小米便签从0到1维护教程

这篇具有很好参考价值的文章主要介绍了小米便签从0到1维护教程。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

小米便签开源社区版从0到1维护教程

1.前置条件-------软件的安装:

开发工具:Android studio

下载Android studio

汉化教程

安装请自行解决

SDK版本以及相关文件

android studio小米便签,开源,android,android studio,java

SDK Tools:

android studio小米便签,开源,android,android studio,java

小米便签的维护:

下载小米便签的源码:

下载地址:小米便签源码下载

下载完成后的文件结构:
android studio小米便签,开源,android,android studio,java

源文件结构如上图,显而易见,源文件里面没有grandle项目管理工具,因此在用android studio打开的时候,要使用下面的方式

android studio小米便签,开源,android,android studio,java

这种方式会为项目添加一个gradle,打开项目后,等待项目加载完成,然后讲javaJDK 版本更改成JDK8(我在维护的时候这里报过错,没有报错的可以不改)

流程如下:

点击文件,选择项目结构

android studio小米便签,开源,android,android studio,java
android studio小米便签,开源,android,android studio,java

选择SDK Location,再点击Gradle Settings

android studio小米便签,开源,android,android studio,java
android studio小米便签,开源,android,android studio,java

将JDK设置为Java8

android studio小米便签,开源,android,android studio,java

打开项目过后结果:

android studio小米便签,开源,android,android studio,java

此时,项目报错:
Could not find com.android.tools.build:gradle:7.4.2.
Searched in the following locations:

https://jcenter.bintray.com/com/android/tools/build/gradle/7.4.2/gradle-7.4.2.pom
If the artifact you are trying to retrieve can be found in the repository but without metadata in 'Maven POM' format, you need to adjust the 'metadataSources { ... }' of the repository declaration.
Required by:
project :
Add google Maven repository and sync project
Open File
根据提示,我们在在项目的 build.gradle(Project:Notes) 文件中添加 Google Maven 仓库。你可以在 repositories 块中添加以下代码:
 maven {
            url 'https://dl.google.com/android/maven2'
        }
添加完后如下:
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
    repositories {
        maven {
            url 'https://dl.google.com/android/maven2'
        }
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:7.4.2'
    }
}

allprojects {
    repositories {
        jcenter()
    }
}
添加完成后点击右上角的图标:

android studio小米便签,开源,android,android studio,java

此时,开始下载组件:android studio小米便签,开源,android,android studio,java
等待下载,下载过程中,可能会出现问题:
A problem occurred configuring root project 'Notes'.

Could not resolve all files for configuration ':classpath'.
Could not download kotlin-stdlib-common-1.7.10.jar (org.jetbrains.kotlin:kotlin-stdlib-common:1.7.10)
> Could not get resource 'https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib-common/1.7.10/kotlin-stdlib-common-1.7.10.jar'.
> Could not GET 'https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib-common/1.7.10/kotlin-stdlib-common-1.7.10.jar'.
> The server may not support the client's requested TLS protocol versions: (TLSv1.2, TLSv1.3). You may need to configure the client to allow other protocols to be used. See: https://docs.gradle.org/7.5/userguide/build_environment.html#gradle_system_properties
> Remote host terminated the handshake
这个问题是当前正在使用的仓库已经停止维护,我们使用maven仓库来代替原来的仓库,向项目的 build.gradle(Project:Notes) 文件中,你可以添加以下代码来使用 Maven 中央仓库:
repositories {
    mavenCentral()
}
添加完成后,整个代码如下:
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
    repositories {
        mavenCentral()
        maven {
            url 'https://dl.google.com/android/maven2'
        }
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:7.4.2'
    }
}

allprojects {
    repositories {
        jcenter()
    }
}

现在点击更新,会出现一处错误:
Execution failed for task ':app:mergeDebugResources'.

A failure occurred while executing com.android.build.gradle.internal.res.Aapt2CompileRunnable
Could not isolate value com.android.build.gradle.internal.res.Aapt2CompileRunnable$Params_Decorated@7e8ac076 of type Aapt2CompileRunnable.Params
> Could not resolve all files for configuration ':app:detachedConfiguration2'.
> Could not find com.android.tools.build:aapt2:7.4.2-8841542.
Searched in the following locations:
- https://jcenter.bintray.com/com/android/tools/build/aapt2/7.4.2-8841542/aapt2-7.4.2-8841542.pom
If the artifact you are trying to retrieve can be found in the repository but without metadata in 'Maven POM' format, you need to adjust the 'metadataSources { ... }' of the repository declaration.
Required by:
project :app
我们在build.gradle(Project:Notes)文件里面添加一行代码:
  google()
添加后完整代码如下:
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
    repositories {
        mavenCentral()
        maven {
            url 'https://dl.google.com/android/maven2'
        }
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:7.4.2'
    }
}

allprojects {
    repositories {
        google()
        jcenter()
    }
}
现在,我们再次构建:映入眼帘的是一个包的错误:

android studio小米便签,开源,android,android studio,java

这个错误产生的原因是在 Android 中,org.apache.http 包已经被废弃,不再推荐在 Android 应用程序中使用,但是我们可以对这个这个包做一个兼容:在build.gradle(Module: App)里面添加
 useLibrary 'org.apache.http.legacy'
完整代码:
apply plugin: 'com.android.application'

android {
    compileSdkVersion 33
    buildToolsVersion "33.0.2"

    defaultConfig {
        applicationId "net.micode.notes"
        minSdkVersion 14
        targetSdkVersion 33
        useLibrary 'org.apache.http.legacy'

    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }
}

再次点击更新配置

android studio小米便签,开源,android,android studio,java

包的错误暂时解决,不维护网络功能,另外,在GTaskASyncTask.java中,有一个方法报错:

android studio小米便签,开源,android,android studio,java

我们将这个过时的方法更改掉:
//        notification.setLatestEventInfo(mContext, mContext.getString(R.string.app_name), content,
//                pendingIntent);
        notification.contentIntent = pendingIntent;
        mNotifiManager.notify(GTASK_SYNC_NOTIFICATION_ID, notification);
解决这个错误后,还有一个配置文件的错误:

android studio小米便签,开源,android,android studio,java

这个错误是因为在 Android 12 及更高版本中,如果一个组件(如 Activity、Service 或 BroadcastReceiver)定义了 Intent 过滤器,则必须显式指定 android:exported 属性,以确保该组件只能被期望的应用程序或系统组件调用。如果没有指定 android:exported 属性,系统将会认为该组件是公开的,从而可能导致安全漏洞。为了解决这个问题,我们依次在报错的地方加上
android:exported="true"
android:exported="false"
如下:
双击报错位置:

android studio小米便签,开源,android,android studio,java

来到报错的地方,依次更改:

android studio小米便签,开源,android,android studio,java
android studio小米便签,开源,android,android studio,java
android studio小米便签,开源,android,android studio,java
android studio小米便签,开源,android,android studio,java

打开AndroidManifest.xml文件,可以看到报错的地方:

android studio小米便签,开源,android,android studio,java

控制台显示:

android studio小米便签,开源,android,android studio,java

这个错误是由于 <data> 元素缺少 URI 属性所致。<data> 元素用于指定 Intent 的数据 URI,如果你在 <data> 元素中指定了数据类型(如 android:mimeType 属性),则还必须指定数据 URI。如果没有指定数据 URI,系统将会认为数据缺失,从而导致 “Missing URL” 错误。
将报错的代码替换为:
<intent-filter>
    <action android:name="android.intent.action.VIEW" />
    <category android:name="android.intent.category.DEFAULT" />
    <data android:mimeType="vnd.android.cursor.item/text_note" android:scheme="content" android:host="com.example.notes.provider" android:path="/notes" />
    <data android:mimeType="vnd.android.cursor.item/call_note" android:scheme="content" android:host="com.example.notes.provider" android:path="/notes" />
</intent-filter>

现在,我们已经解决了所有让程序停止运行的问题,点击运行一下:

android studio小米便签,开源,android,android studio,java
android studio小米便签,开源,android,android studio,java

这样,小米便签就能够运行起来了

到这里没有运行成功不要灰心~,下面是我打包的运行成功的程序:

点击下载
提取码:v6qd
链接:https://pan.xunlei.com/s/VNVEyleS4tQUNft2-DTE7x30A1#
提取码:v6qd文章来源地址https://www.toymoban.com/news/detail-737710.html

制作不易,对您有用请留赞~~~~~

到了这里,关于小米便签从0到1维护教程的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 小米便签源码分析——UI包

    目录 1、AlarmAlertActivity.java 2、AlarmInitReceiver.java 3、AlarmReceiver.java 4、DateTimePicker.java 5、DateTimePickerDialog.java 6、DropdownMenu.java 7、FoldersListAdapter.java 8、NoteEditActivity.java 9、NoteEditText.java 10、NoteItemData.java 11、NotesListActivity.java 12、NotesListAdapter.java 13、NotesListItem.java 14、NotesPreferenceA

    2024年02月02日
    浏览(37)
  • 如何把小米手机上的便签导出为文本?

    手机 便签是我们非常常用的记事工具,如果想把小米手机上的便签导出为文本该如何操作呢? 小米手机有自带的记事工具是笔记,如果想将内容导出为文本的话,在需要导出的那条内容的详情页面点击右上角的分享按钮,选择以文字形式分享,就可以将内容导出了。不过这

    2024年02月11日
    浏览(119)
  • Android Studio安装&Java开发环境配置详细教程

    一,Android Studio概述 Android Studio是Google于2013年I/O大会针对Android开发推出的新开发工具,是基于IntelliJ IDEA开发的,IntelliJ在业界被公认为最好的Java开发工具之一。尤其是在智能代码助手、代码自动提示、重构、J2EE支持、各类版本工具(Git、SVN、GitHub等)、JUnit、CVS整合、代码

    2023年04月08日
    浏览(48)
  • Android Studio 无法安装apk到小米手机问题解决

    以前开发都是用自己的samsung手机,打开开发者选项和usb调试,直接可以连上Android Studio,进行调试,后来我的samsung退伍了,换上了Apple,就无法使用了,用公司的小米手机打开开发者选项和usb调试,然后进行调试,将apk安装小米手机安装应用报错(Failed to establish session Erro

    2024年02月15日
    浏览(76)
  • 小米手机便签怎么导出到华为mate60Pro手机上?

    华为mate60Pro手机于2023年8月29日发布了先锋计划,有不少网友都抢到了这款新机。而有一些网友表示自己在换手机之前遇到了问题,这就是之前使用的手机是小米,所以需要把重要的图片、短信、通讯录、便签等数据导出到新的手机上,但是手机搬家助手不支持把小米手机便签

    2024年02月10日
    浏览(54)
  • CMake入门教程【实战篇】使用开源库cmake-modules简化项目开发与维护

    本教程介绍了rpavlik/cmake-modules,一个CMake模块集合,旨在简化和优化CMakeLists.txt文件的编写和维护工作。该集合尤其对虚拟现实和物理模拟包的开发者有用,同时也包含通用实用模块和针对旧版CMake的补丁或解决方案。 项目托管在GitHub上,可通过链接访问:rpavlik/cmake-modules 查

    2024年01月15日
    浏览(50)
  • 【Android安全】小米8刷机、救砖、root教程

    线刷 :通过计算机上的刷机软件把ROM 通过数据线传输 并安装到手机内存中。ROM包以tgz为后缀。 卡刷 :把所需要的ROM下载或者复制到 内存/SD卡根目录 中。 按照https://www.mi.com/service/support即可 刷机工具:http://bigota.d.miui.com/tools/MiFlash2018-5-28-0.zip BL解锁工具:http://www.miui.com/u

    2024年02月05日
    浏览(74)
  • 字节跳动开源!超好用的视频抠图工具;GitHub开源项目维护协作指南;自动化数据清洗工具包;强化学习入门教程;前沿论文 | ShowMeAI资讯日报

    👀 日报合辑 | 📆 电子月刊 | 🔔 公众号下载资料 | 🍩 @韩信子 https://github.com/HelixNGC7293/DeforumStableDiffusionLocal https://space.bilibili.com/176003 文本提示作画工具。本代码库实现是本地版本的Deforum Stable Diffusion V0.4,支持txt设置文件输入和动画功能! https://github.com/PeterL1n/RobustVideoMat

    2023年04月08日
    浏览(88)
  • Android Studio 期末大作业(英语app)[免费开源]

      先简要说明下:该大作业不包含数据存储,网络通信技术,仅是一个大致的框架,有兴趣的朋友可以在此基础上进行开发。 资源链接在文末ヽ(*^ー^)人(^ー^*)ノ 大作业简介:这是一款英语学习APP,包含4个大模块:单词搜索、美文阅读、客服聊天、软件详情。每个模块都有详

    2024年02月05日
    浏览(78)
  • Android Studio App开发之通知渠道NotificationChannel及给华为、小米手机桌面应用添加消息数量角标实战(包括消息重要级别的设置 附源码)

    需要全部源码或运行有问题请点赞关注收藏后评论区留言~~~ 为了分清消息通知的轻重缓急,Android8.0新增了通知渠道,并且必须指定通知渠道才能正常推送消息,一个应用允许拥有多个通知渠道,每个渠道的重要性各不相同,有的渠道消息在通知栏被折叠成小行,有的渠道消

    2024年02月16日
    浏览(58)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包