كانت هذه هي النسخة القديمة من Talon لتويتر. لقد قمت منذ ذلك الحين بفتح إصدار التصميم متعدد الأبعاد للتطبيق. جميع المساهمات المستقبلية سوف تذهب إلى هذا الإصدار. يجب اعتبار هذه النسخة الكلاسيكية "مهجورة"، لكن المشروع سيبقى قائمًا لأي شخص يريد الاطلاع عليه.
يمكن العثور على الإصدار الجديد من Talon هنا: https://github.com/klinker24/talon-twitter-material
هذه هي النسخة الكاملة من عميل Twitter الذي قمت بإنشائه لنظام Android. إنه مفتوح المصدر بنسبة 100%، والشيء الوحيد الذي سيتعين عليك القيام به هو توصيل مفاتيح API الخاصة بك.
لقد صنعت غالبية هذا التطبيق عندما كان عمري 19 عامًا، مع فصل جافا واحد في المدرسة الثانوية ونصف فصل جامعي، ويمكنك معرفة ذلك في بعض الأماكن. أعلم أنه ليس أجمل كود رأيته على الإطلاق، لكنه يعمل ويعمل بشكل جيد جدًا! لذا لا تحكم بشدة على الكود، فمن المؤكد أنه تحسن بمرور الوقت :)
اعتبارًا من الآن، لا يحتوي على الكثير من التعليقات في جميع أنحاءه، ومن السهل جدًا فهم معظمها إذا بحثت لفترة من الوقت، ولكن مع مرور الوقت، سأواصل الأمر وأحاول التعليق على المزيد منه.
هناك بعض الأشياء الرائعة جدًا في هذا التطبيق، وليس فقط ما يتعلق بتويتر أيضًا. يمكن لأي شخص ينظر إلى هذا الحصول على الملخص الكامل لأشياء مثل:
لا تتردد في استخدام هذا كمورد لهذه الأنواع من الأشياء، وهذا أحد الأسباب التي جعلتني أرغب في فتح المصدر في المقام الأول. هناك الكثير لنتعلمه من مشروع كبير مثل هذا، وأعتقد أن هذا مهم جدًا في عالم 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
أحد الأسباب التي جعلتني أقرر فتح المصدر لم يكن فقط لأن الناس سيكونون قادرين على التعلم منه. أنا أيضا بحاجة إلى المساعدة. هناك أشياء لا أعرف كيف أفعلها بشكل أفضل. ليس لدي خبرة أو معرفة حتى الآن لفهم ما الذي يحدث معهم أو لماذا يفشلون بشكل عشوائي بالنسبة لبعض الأشخاص.
لقد بذلت قصارى جهدي مع هذا التطبيق، ولكن كلما زاد عدد العقول التي تعمل عليه، كان ذلك أفضل. من المحتمل أنك إذا كنت هنا وتقرأ الملف التمهيدي بالفعل، فلديك خبرة في البرمجة أكثر بكثير مني على أي حال وتعرف كيف يمكن تحسين الأمور.
إذا كنت تعتقد أنه يمكن القيام بشيء أفضل، أخبرني. أنا لا أقول إنني سأتفق معك في هذا الأمر أو أنه سيكون كما تظن أنه ينبغي أن يكون، ولكن ليس هناك أي ضرر في السؤال.
ليس هناك الكثير لأقوله عن هذا. لقد بذلت الكثير من الوقت والجهد في هذا المشروع وآمل حقًا أن يساعد هذا شخصًا ما. اتخذ الخطوة، وجرب شيئًا لم تجربه من قبل، وانظر ما يمكنك تعلمه مني ومن أخطائي.
اسمحوا لي أن أعرف إذا كانت لديك أسئلة وسأجيب عليها بأفضل ما أستطيع.
شكرا واستمتع مع تالون!
لوك كلينكر (المطور الرئيسي لتطبيقات Klinker)
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.