这是 Twitter 版 Talon 的旧版本。此后我开源了该应用程序的 Material Design 版本。未来的所有贡献都将转到该版本。这个经典版本应该被视为“已弃用”,但对于任何想要查看它的人来说,该项目仍将保留。
新版本的Talon,可以在这里找到:https://github.com/klinker24/talon-twitter-material
这是我为 Android 创建的 Twitter 客户端的完整版本。它是 100% 开源的,您唯一需要插入的就是您自己的 API 密钥。
这个应用程序的大部分内容是我在 19 岁时制作的,其中包括一门高中 Java 课程和一半大学课程,你可以从某些地方看出这一点。我知道这不是您见过的最漂亮的代码,但它可以工作,而且工作得非常好!所以不要对代码做出太严格的判断,随着时间的推移它肯定会变得更好:)
到目前为止,它并没有太多的评论,如果你只是挖掘一段时间,大部分内容都很容易理解,但随着时间的推移,我会仔细阅读并尝试评论更多内容。
这个应用程序中有一些非常简洁的东西,而不仅仅是与 Twitter 相关的。看到此内容的人可以获得以下内容的完整概要:
请随意使用它作为此类事物的资源,这就是我首先想要开源它的原因之一。从这样的大项目中可以学到很多东西,我认为这对于不断变化的 Android 世界非常重要。
但我要求您不要为了自己的利益而重新分发此应用程序。如果您制作了一个构建并想与人们分享它,那就太好了,这就是它的用途。不过,不要向他们收取该构建的费用。我花了一年的时间创建这个项目,如果您选择自己制作,这就是我的要求。
请不要尝试将其编译为 ANT 版本。求求你了,直接用Android Studio或者IntelliJ然后用Gradle编译就可以了。它将使您的生活变得更加轻松,我不会回答有关 Eclipse 依赖关系和编译的问题。我们花了很长时间将所有项目更改为 Gradle,我希望它能帮助一些人。
编译它:
git clone <clone URL>
查看项目./gradlew assembleDebug
从命令行编译它要获取 Twitter API 密钥,请执行以下步骤:
在.gitignore
文件中,我忽略了应该包含您的密钥的secrets.properties
。继续,将secrets.properties.sample
复制到secrets.properties
并填写其中的密钥。
这使我可以将密钥置于源代码控制之外,但仍然可以轻松构建应用程序。
对于发布版本,只需将密钥库作为keystore
添加到项目的根目录,然后将keystore.properties
文件添加到根目录(这些字符串周围没有引号!):
KEY_SIGNATURE=xxxx
KEY_ALIAS=xxxx
我决定开源的原因之一不仅仅是因为人们能够从中学习。我也需要帮助。有些事情我只是不知道如何做得更好。我还没有经验或知识来理解他们出了什么问题或者为什么他们会随机地对某些人失败。
我已经尽我所能使用这个应用程序,但是越多的人在它上面工作就越好。如果您在这里并实际阅读自述文件,那么您很可能比我有更多的编程经验,并且知道如何改进事情。
如果您认为某些事情可以做得更好,请告诉我。我并不是说我会同意你的观点,或者它永远会是你认为应该是的方式,但询问并没有什么坏处。
对此我无需多说。我在这个项目上投入了大量的时间和精力,我真诚地希望这对人们有帮助。迈出一步,尝试一些你以前从未尝试过的事情,看看你能从我和我的错误中学到什么。
如果您有疑问,请告诉我,我将尽我所能回答。
谢谢,祝Talon玩得开心!
Luke Klinker(Klinker Apps 首席开发人员)
Copyright 2014 Luke Klinker
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.