# SYBlog-Android **Repository Path**: sy/SYBlog-Android ## Basic Information - **Project Name**: SYBlog-Android - **Description**: SYBlog的Android APP,使用Kotlin编写 - **Primary Language**: Android - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: https://blog.sylingd.com/ - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2018-02-15 - **Last Updated**: 2020-12-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # SYBlog Android App 此App适用于SYBlog API,使用Kotlin编写,Android Studio编译,兼容Android 5.0及以上版本 下载体验:见[发行版本](https://gitee.com/sy/SYBlog-Android/releases) # 使用方式 * 将最新版源代码下载到本地 * 使用Android Studio打开 * 修改以下几处: 文件:app/src/main/java/com/sylingd/blog/lib/Api.kt ```kotlin //后台配置的API KEY,建议使用随机生成的字符串 private const val key = "" //此处是请求UA,默认是获取系统信息,如果有特殊需求请修改此处 private val ua = System.getProperty("http.agent") ``` 文件:app/src/main/java/com/sylingd/blog/lib/Config.kt ```kotlin //修改为API地址,一般是http://域名/api/ const val apiUrl = "https://example.com/api/" //修改为文章页面基本路径,一般是http://域名/archives/,大部分情况下,填写http://域名/也可以正常使用 const val baseUrl = "https://example/archives/" //修改为能从URL中匹配出文章ID的正则表达式 private val articleRegex = Regex("""^https?://example\.com/archives/(\d+).html""") //此函数用于判断一个URL是否为文章页面,一般不需要修改 fun isArticle(url: String): Boolean { return articleRegex.matches(url) } //用于从文章URL中提取出ID,注意下面的$1可能需要修改 fun getArticleId(url: String): Int { val r = articleRegex.find(url)!!.value return articleRegex.replace(r, "$1").toInt() } //用于将文章ID拼接成完整URL fun getArticleUrl(id: Int): String { return "https://example.com/archives/$id.html" } ``` 文件:app/src/main/AndroidManifest.xml,将data部分修改为能匹配出文章ID的内容,例如: ```xml ``` 其中,`android:pathPrefix`表示匹配path前缀,您也可以使用`android:pathPattern`编写正则表达式来进行匹配。`android:scheme`则表示请求协议,一般为http或https * 打开Android Studio的语言修改器,按需修改 * 编译、打包、发布 # 其他可能需要的修改项目 ### 修改包名 默认包名是`com.sylingd.blog`,此包名用于Android系统区别不同应用,建议修改为域名倒写,例如域名是`blog.example.org`,则建议修改为`org.example.blog` 需要修改的细节如下: * app/src/main/AndroidManifest.xml第三行出`package="com.sylingd.blog"` * 所有app/src目录(含子目录)下的`*.kt`文件中的`com.sylingd.blog`(可使用Notepad++等工具批量替换) * app/src/main/java/**com/sylingd/blog**目录需要重命名,例如重命名为app/src/main/java/**org/example/blog** ### 修改图标 Android Studio中,右键点击左侧的“res”,选择New - Image Asset,按向导修改图标 # 其他注意事项 * 本App不保证API KEY不会泄露,请各位注意,打包后的Android程序可以很轻松的被反编译。建议使用阿里聚安全、腾讯乐固等第三方加固工具,加大反编译难度 * 修改本程序可能需要您有一定的Android编程知识。作者不保证会解答问题 # 开源许可 除第三方组件外,本程序开源协议为:[Apache License 2.0](LICENSE)