Hacker News client with a focus on reliability and usability.

Related tags

App hn-android
Overview

HN (Android)

This is the official repo for HN, an unofficial Hacker News client for Android, built for reliability and usability.
Download the app here: https://play.google.com/store/apps/details?id=com.manuelmaly.hn and read the introductory blog post.

If you find any issues, please post them into the Issues section, send a Pull request, or tweet me at @manuelmaly.

Note about Pull Requests: If you commit your additions into feature branches (http://nvie.com/posts/a-successful-git-branching-model/) instead of the master branch, you will have no problems later on when you pull in updates from my repo. If you do that, you always have a clean master branch at all times (meaning it does not contain anything other than my repo's master branch commits).

Setup

Import in Android Studio.

Create the following dummy properties file in the root directory.

keyStore=
keyStorePassword=
keyAlias=
keyAliasPassword=

Third party software

License

[MIT License] (http://opensource.org/licenses/mit-license.php):

Copyright (c) 2012 Manuel Maly

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Comments
  • Add action bar DON'T MERGE INTO MASTER YET, PULL THIS BRANCH

    Add action bar DON'T MERGE INTO MASTER YET, PULL THIS BRANCH

    Alright, so I took the liberty of doing most of this over the past couple of days, but finals are coming up, and if I don't submit this now I'll probably fail because I'll do no studying. I've outlined all the changes below. Let me know if you want to change any history because there are a lot of commits here.

    What's here: An integration of ActionBarCompat with all activities using Gradle/Android Studio. I used ABC because it's finally mature enough to handle all this and it is likely what other apps will start using going forward. Plus, all the documentation is pretty much identical for both of them. Requisite cleanup of all layout files Recreation of most of the features that were present on the old Action Bar

    What's missing/broken: Testing on pre-3.0 builds and real devices Styling of the dropdown menus from the overflow menu (this is done by setting DropDownListViewStyle in the themes) Styling the overflow icons appropriately. They show up blue when tapped. I'm not sure how to change this Integration with Eclipse builds For some reason the comment bubbles got huge with this. I think it is an issue with scaling, but I really couldn't lock it down.

    Stuff that was lost: You can no longer tap the action bar to scroll you up to the top of a comments list. I think this is just theoretically incompatible with the way custom views are added. I think that implementing one of the suggestions here: http://cyrilmottier.com/2013/01/09/back-to-top-android-vs-ios/ will be a good way to make up for this.

    Further thoughts: I'm not sure if having just the up arrow is the best way to go about things going forward, as it introduces some buginess with touch targets it seems. Maybe creating an icon and having a normal up arrow would be the way to go. As it stands now the app icon does a pretty bad job as a home icon though.

    Anyway, I'll be around to support this however possible.

    opened by maltzj 18
  • Orientation changes lead to activity restarting on API 13+

    Orientation changes lead to activity restarting on API 13+

    (Assuming this is not intended behavior.) Activities are restarted when changing device orientation on newer Android versions. #27 does not prevent this. It is probably caused by the screenSize configChange, which is also called on rotation.

    You could probably fix this by easily adding "screenSize" to all the android:configChanges entries in AndroidManifest.xml:

    android:configChanges="keyboardHidden|orientation|screenSize"

    See http://stackoverflow.com/a/11631017 for further info.

    I could not test this myself with your source because of various unrelated build errors I currently can´t fix, but with other projects, this worked well.

    opened by averageapps 13
  • Add downvote (fixes #43)

    Add downvote (fixes #43)

    This PR has the intention of adding downvoting to the list of options for a user if that user can downvote. I was not able to fully test this because I don't have downvoting privileges. However, when using the html provided by @wting in Issue #43 and forcing his username the option did appear. Before merging this in it would probably be wise for someone who has downvoting privileges to pull my branch and run it to make sure everything is kosher.

    That being said, given that the display shows up properly and the fact that the voting logic is pretty trivial I'm confident that this works.

    opened by maltzj 11
  • Add external url handling

    Add external url handling

    Hi Manuel,

    I've finished the work you started for handling external news.ycombinator.com urls for posts.

    The solution isn't super clean, but it would have required a lot of refactoring otherwise which I'm not comfortable with in a codebase that's not mine.

    Let me know what you think.

    Cheers, Pascal

    opened by pascalw 11
  • Pull down to refresh

    Pull down to refresh

    This is the pull request for the "pull down to refresh" feature discussed in #163.

    Currently it is not ready for merging. This is just to help keep track of it!

    opened by tbroadley 10
  • Adding search

    Adding search

    This PR adds 'Search' functionality (#36) to the app and addresses the Load More issue, where the posts cannot be loaded more than once (#64). The second was fixed implicitly, as it was needed by the search implementation.

    I'd love some feedback and review and hope you like it. I know, that some of the code styles are not in sync with the current style, but I guess this will be fixed, if the other PR gets merged, or if we settle on a style. If it is not ok, please let me know, what I can and should fix.

    The Search uses the new API used by HN (https://hn.algolia.io/api).

    opened by peshkira 10
  • Open in default browser button

    Open in default browser button

    I added a little button so that the user can open an article in their default browser. nothing major but I think it can be frustrating not being able to easily access the article in my own browser if I need to for some reason. It's just a little browser icon.

    device-2013-04-06-173742

    opened by MarkDunne 8
  • Update project and fix the feed parsing issue

    Update project and fix the feed parsing issue

    This is a fix for https://github.com/manmal/hn-android/issues/189.

    This PR updates the project to use Android 32 and more recent Gradle version. I'm not an Android developer so it could probably use some more experienced eyes on it.

    First and 3rd commit are upgrading Android SDK, Gradle and other dependencies. The code in app/build.gradle around building variants wasn't working so I removed it -- someone can probably comment whether it's necessary.

    Second commit is to fix issues when parsing the HN feed. I'm not sure what changed in the markup but using class selectors instead of tag position selectors fixes the problem.

    opened by cwilson 7
  • Comments are not displayes

    Comments are not displayes

    While the button to show comments now shows again, a new issue has turned up. Now I don't get any of the comments displayed. The comment page loads for a while but remains empty (same as when looking at comments for an article with zero comments). This broke around yesterday without the App receiving am update, so I assume the problem is due to a change in the data returned by news.ycombinator.com.

    P.S: Sorry for the typos and bad formatting, I am currently on mobile.

    opened by oceanofsolaris 7
  • Added files for a migration to gradle

    Added files for a migration to gradle

    Android Studio is awesome, and people should be able to develop using it. I just followed the migration guide from Android's website. I'm not positive which config files we want floating around, so I just followed what the Github Android app did.

    opened by maltzj 7
  • Some intent updates.

    Some intent updates.

    Hi,

    I was looking at issue #158 and decided to try and fix it. I found out that having an intent-filter exposes an activity externally even with exported=false. Removing them fixes the issue and everything still works as normal.

    The second thing in this PR is removing HN from the 'share' menu. I noticed that it didn't work so I was going to try and fix it. However, I realised that it's probably not needed as the user can't actually post using this app (and any links they click on should be picked up by the VIEW intent and sent to the app anyway rather than using the SEND intent).

    Update: Also added http links to the intent. Links on the actual website will be https but other links could be http (probably fixes #166).

    Update: reverted a commit that introduced a small bug ("not valid" message shown when loading HN homepage from external link).

    Let me know what you think :).

    opened by kewley 6
  • enforces https for article viewers, removes outdated article readers, adds textise provider

    enforces https for article viewers, removes outdated article readers, adds textise provider

    • As they are no more supported, removes outdated article readers such as
    1. google gwt
    2. view text
    • makes https endpoint for instapaper provider as http are no longer supported.
    • adds textize provider
    opened by joicemjoseph 0
  • Fix/unsupported protocol bug

    Fix/unsupported protocol bug

    This is a bug fix for the issue below: https://github.com/manmal/hn-android/issues/183

    Please let me know if you need any changes to this pull request.

    opened by silleknarf 0
  • Article Not Loading Bug

    Article Not Loading Bug

    This bug occurs when opening particular links and it will continue to occur when opening the same link.

    For example the link currently on the homepage with the following details:

    Title: SoundCloud's Collapse

    Link: https://www.buzzfeed.com/ryanmac/inside-the-storm-at-soundcloud

    Screenshot: https://imgur.com/gallery/Q9lAU

    bug 
    opened by silleknarf 0
  • Huge battery drains

    Huge battery drains

    This app sometimes drains the battery pretty hard, the culprit is probably an article that was not released once the activity has been put in background

    Some screenshots for reference:

    screenshot_20160412-221638 screenshot_20160412-221642

    bug 
    opened by Allsimon 0
Android News App built in kotlin with implementation of MVVM architecture, android navigation components and retrofit. Displays news to users allowing them to share and save news.

News-App Android news app built in kotlin that fetches news data from news api with Retrofit and displays news to users. This App follow MVVM architec

Raj Manjrekar 16 Dec 29, 2022
Hacker News Android App - Made with Kotlin

HackerNewsApp Hacker News Android App - Made with Kotlin Simple app that request, the latests HackerNews posts and allows to delete items from the cli

Fernando Herrera 1 Dec 8, 2021
A news app made using android studio in Java with features like favourite news, Location detector for local news, and especially made with HUAWEI APIs

HuaweiGlobalNewsApp A news app made using android studio in Java with features like favourite news, Location detector for local news, and especially m

Christian Imanuel Hadiwidjaja 1 Oct 30, 2021
News-App - A news app Which displays news with the help of JSON data

News-App This is a news app Which displays news with the help of JSON data

Lalith Sharma 0 Feb 16, 2022
A News Application Shows Breaking News of the Country with a feature to save News for future Use.

A News Application Shows Breaking News of the Country with a feature to save News for future Use.You can search news on any topic.Used all latest stuffs in android like Navigation Component, MVVM Architecture, Retrofit, Room DataBase, Kotlin Corutines etc

Aman Bhatt 2 Oct 20, 2022
The News App has been carried out within the framework of the MVVM architecture, information about news is obtained by consulting an API, it is built usisng Jetpack Copose, Coroutines, Dependency Injection with Hilt and Retrofit

Journalist The News App consists of an application that displays the latest news from EEUU from an API that provides official and updated information.

null 0 Nov 3, 2021
Newesy is news app which uses NewsAPI to fetch news.

Newesy is news app which uses NewsAPI to fetch news.The main aim of this app was to learn Modern Android Architecture (MVVM).It uses MVVM,Kotlin-coroutines,Room,ViewModal,Retrofit,GSON and Navigation graph

SHANTANU RATHOD 7 Oct 29, 2022
This is a News Application for android mobiles, fetching news through Guardian API.

News-In-Hand This is a NEWS FEED APP which gives a user regularly-updated news from the Internet. To achieve this, I use the Guardian API. This is a w

Bhramar Virmani 1 Nov 5, 2021
NewsFeedApp - An android news-feed-app which shows latest news of various sources

NewsFeedApp An android news-feed-app which shows latest news of various sources

Srihitha Tadiparthi 4 Aug 8, 2022
Bundel is a digital wellbeing Android app, helping you to focus by grouping up notifications and only releasing them in batches

Bundel is a digital wellbeing Android app, helping you to focus by grouping up notifications and only releasing them in batches, at set times. This minimises context switching and improves productivity, while decreasing the impulse to continuously check your phone.

Sebastiano Poggi 238 Dec 27, 2022
Firefox Focus: The privacy browser - Browse like no one’s watching.

Firefox Focus for Android Browse like no one’s watching. The new Firefox Focus automatically blocks a wide range of online trackers — from the moment

Mozilla Mobile 2.1k Dec 28, 2022
📱:newspaper: Android client for the Nextcloud news/feed reader app

Nextcloud News Reader – Android App The Nextcloud News Reader Android App is under AGPLv3 License terms. Bugs and enhancements can be reported under:

Nextcloud 589 Dec 31, 2022
📱:newspaper: Android client for the Nextcloud news/feed reader app

Nextcloud News Reader – Android App The Nextcloud News Reader Android App is under AGPLv3 License terms. Bugs and enhancements can be reported under:

Nextcloud 591 Jan 8, 2023
Mobile client for official Nextcloud News App written as Kotlin Multiplatform Project

Newsout Android and iOS mobile client for Nextcloud news App. The Android client is already available to download in the Play Store. F-Droid and Apple

Simon Schubert 118 Oct 3, 2022
this is a news to the client

QuickNews This is a news client, similar to netease, news headlines Set up(eclipse) QuickNews is a run project and vitamio is a library project. Downl

null 883 Dec 7, 2022
An app that is a one-stop destination for all the CS enthusiasts, providing resources like Information scrapping techniques, best YT channels, courses available free-of-cost, etc. & knowledge about every domain and field that exists on the Internet related to Computer Science along with News, Jobs, and Internships opportunities in these domains along with valuable tips and hacks from mentors for a particular domain.

An app that is a one-stop destination for all the CS enthusiasts, providing resources like Information scrapping techniques, best YT channels, courses available free-of-cost, etc. & knowledge about every domain and field that exists on the Internet related to Computer Science along with News, Jobs, and Internships opportunities in these domains along with valuable tips and hacks from mentors for a particular domain.

CSwala 48 Nov 26, 2022
An unofficial Zerotier Android client patched from official client

An unofficial Zerotier Android client patched from official client

KAAAsS 819 Dec 29, 2022
MEGA Android Client - A fully-featured client to access your Cloud Storage provided by MEGA

A fully-featured client to access your Cloud Storage provided by MEGA. This document will guide you to build the application on a Linux machine with Android Studio.

Mega Limited 1.1k Jan 3, 2023
Leisure is an Android App containing Zhihu Daily,Guokr Scientific,XinhuaNet News and Douban Books

闲暇(Leisure) 该项目将不再新增功能,仅做重构 Leisure is an Android App containing Zhihu Daily,Guokr Scientific,XinhuaNet News and Douban Books. 60应用市场下载地址: [http://m.a

Danielding 558 Dec 13, 2022