johannesjo / super-productivity-android Goto Github PK
View Code? Open in Web Editor NEWAndroid App for Super Productivity (https://super-productivity.com/)
License: MIT License
Android App for Super Productivity (https://super-productivity.com/)
License: MIT License
I would like to pull the latest .apk directly from github using Obtainium. In order to do this, the latest released .apk would have to be listed under Releases. Would this be possible or is there another way to get the latest .apk directly from github?
App crashes when trying to select colour for new project.
Could use this app only for 15 seconds, because it crashes, when I try to start using it. So, nothing is set up, yet.
Could use this app only for 15 seconds, because it crashes, when I try to start using it. So, nothing is set up, yet.
Colour should be selectable, without the app crashing.
Just installed this app. My experience is, that I opened the app, tried to create a new project, clicked on the colour bar, to try to change the project's colour, but it always leads to the aforementioned app crash.
I did not set anything up or do anything with the app, yet, simply because I cannot even start using it. Total failure.
Revision: '0'
ABI: 'arm64'
pid: 21614, tid: 21614, name: perproductivity >>> com.superproductivity.superproductivity <<<
uid: 10569
signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x68
Cause: null pointer dereference
x0 0000000000000040 x1 00000000ff78909c x2 0000000000000079 x3 0000000070c89630
x4 0000000000000079 x5 0000006d8a2d0674 x6 0000000012c5d610 x7 0000000000000018
x8 0000000000000000 x9 fd582cb7eb200c00 x10 0000000000430000 x11 0000000000000001
x12 0000000000000078 x13 0000006d995b7720 x14 0000006d995b7780 x15 0000000000000007
x16 0000000000000000 x17 000000000004b175 x18 00000070303e0000 x19 00000000ff78909c
x20 0000006dba9222d8 x21 0000006ec9b70460 x22 0000006e59b5f610 x23 0000007ff76902d0
x24 0000007ff76902b0 x25 0000006d400a1830 x26 000000702f23d000 x27 0000006e69be63a8
x28 0000006d40055000 x29 0000007ff7690030
lr 0000006d3d40fbd4 sp 0000007ff7690020 pc 0000006d3d417ee0 pst 0000000060000000
backtrace:
#00 pc 000000000197cee0 /product/app/webview/webview.apk!libwebviewchromium.so (offset 0x9db000) (BuildId: 7b9c507e4f5d53ab00dfdeb2487c487a1485f16e)
When I run the Android App, it doesn't work when there is no internet connection. You just get an error page that the website https://app.super-productivity.com couldn't load. So the App seems to load something from your web server and just fails to start if it can't.
My question here would be, what does the app try to load from your webserver? Is the app just a wrapper for the web app and loads all the html, css, js content from your webserver at each start? Or is it just some update check?
It would be great if the app would work offline, too.
Currently the Android app connects to https://app.super-productivity.com to load necessary source code to function. For an ToDo / time tracking app that can and is intended to function locally - except from optional task syncing - that's an unnecessary step just transferring data that could be leaked and adding attack surface that could be abused.
The best option would probably be to serve the web app locally and therefore embed all needed files inside the Android app itself. That would prevent the former existent connection to be manipulated, spied on or abused otherwise by an attacker.
Other alternatives would be:
Give users a option to use a self-hosted instance of the super productivity web app. This wouldn't eliminate the problem completely but users wouldn't have to trust a foreign, uncontrollable and unverifiable web app anymore, because users could set up their own instance or use one they trust. Therefore, the problem would be minimized a bit.
The other option would be to inform the users at the first start of the Android app that a connection to your servers are necessary for super productivity to function properly. This wouldn't avoid the problem, but at least users would know and can actively decide if that's okay with them or not.
A pleasant side effect would be that bugs like #3 would probably be avoided :-)
Thank for taking the time to fill this bug report fully. Without it we may not be able to fix the bug, and the issue may be closed without resolution.
And thank you for writing the Super Productivity app 🙂
I already am using Super Productivity on my laptop and wanted to use it on my Android as well. I receive an error when trying to configure synchronization via Google Drive.
Steps to reproduce the behavior:
Google Drive: Error while creating sync file. [object Object]
.The synchronization configuration working.
When navigating through the app, especially between top-level navigation points such as those found under the hamburger menu (Today, Scheduled, Project Foo etc...), I would expect interaction with the back button to navigate to the previous screen.
Steps to reproduce the behavior:
You can capture the back button event before it is delegated to the system by overriding onBackPressed()
in an Activity
.
In the case of this app, I think you could override in FullscreenActivity
following the tips here: https://developer.android.com/guide/navigation/navigation-custom-back#implement_custom_back_navigation
Some context around the back behaviour: https://developer.android.com/guide/components/activities/tasks-and-back-stack
I am use pomodoro timer, but not see notification about end and start timer.
On the linux version the error shown is EISDIR: illegal operation on a directory, open 'path to file'
And on the android version it shows: java exception was raised during method invocation.
I have tried looking it up but cannot find anything to fix this.
This happens immediately after I click save for enabling sync.
please add an option to change the font size of the Android app
I found the app being pretty interesting just after the installing. But here I can see pretty old issues and lack of recent commits. Thus the questions are:
When running a local angular webserver with ng serve --host 0.0.0.0
, and configuring the Android app to set url = "http://10.0.2.2:4200"
inside the Android Studio emulator, the Android app should in theory request resources from the local webapp.
However, it does not work: the Android app stays in an infinite loading screen (with the "quote of the day"). However, the web app works fine in the emulator's Android Chrome browser at the address http://10.0.2.2:4200
. This suggests that either the webapp behaves differently if it's the Android app, or it's the Android app's WebView component that is failing to properly process the webapp when it's locally served.
I tried to debug, but no luck. I even tried to nullify these constants in the webapp:
export const IS_ANDROID_WEB_VIEW = false;
export const IS_F_DROID_APP = false;
To try to force the behavior to be the same between the Android app and Chrome browser, but it did not change anything.
Because of this issue, it is impossible currently to develop the webapp and Android app locally. The webapp needs to be uploaded on an online server before.
Same branch as #33. This PR implements some bugfixes and updated instructions to launch the webserver locally and access it from inside the emulator, otherwise it would not even display in emulated Chrome browser.
Android 11 (emulated on a Pixel 3a phone). Host computer: Windows 10 x64.
Steps to reproduce the behavior:
http://10.0.2.2:4200
. This should work fine.The Android app should get redirected to "Today" tab after loading.
In most (if not all) android apps drawer can be opened with a swipe gesture, but here the user needs to explicitly click on the drawer button.
Implement opening drawer with swipe gesture
Using shortcut j,k not select task.
After some time, I don't receive notifications anymore from the app. When i have a task scheduled within half an hour or so, i get a notification, but when it is scheduled in 2 hours and i don't open the app anymore, I don't get the notification for the task
I'm using the app downloaded from f-droid. I'm using version 21.0
Steps to reproduce the behavior:
Getting a notification for a scheduled task, even though it is more than 2 hours in the future and I don't open SupProd in the meantime
I have disabled battery optimization
I have locked the app in the recent list
I'm using a OnePlus 5T
The mesage with some failed sync requests and http status 409 pops up a ew times.
OS: Android 10 on a lenovo tab
I want to use super productivity as the only application for my daily life planning. It fits all my needs except one - it has some problems with notifications.
The application has reminders especially for scheduled and repeated tasks. But application must be active to show it. I would like to have such notifications even I close the application. I know it should be possible, because it is general thing for android apps.
7.5.2
Steps to reproduce the behavior:
I get a reminder(push notification) even the super-productivity app is closed.
I believe it happens because super-productivity stops all its activities when it looses focus. So any reminders and notifications are happening only when the app is visible.
Hello!
First, great thanks for Super Productivity, I discovered it yesterday and it feels like an awesome discovery! Sorry for not filling in the whole template, I just feel like it's not really relevant for this “issue”
As per eg. johannesjo/super-productivity#668 , the WebAppPassword app is currently required in order to do WebDAV from the android application. To the best of my understanding, this is due to CORS: Nextcloud explicitly disallows requests from other websites, and so this is security working as designed. WebAppPassword basically weakens this security in order to make Super Productivity work anyway.
However, this does not have to be the case: as there is an actual android app, it should not actually verify CORS headers.
My understanding is that the issue stems from the fact that the WebView is configured to run the webapp from the website directly (thus requiring internet): https://github.com/johannesjo/super-productivity-android/blob/master/app/src/main/java/com/superproductivity/superproductivity/App.java#L43
I think the issue could be solved by bundling the webapp code into the application itself, as this way the URL would be given as file://
rather than https://
, and thus be exempt from CORS.
In addition, I'm not sure how exactly the thing works but maybe it would also allow (for free) the app to work without an internet connection, which can always be useful. (Also, this way people could upgrade their app independently from app.superproductivity.com, which is always a nice thing: as I'm personally maybe too much security-conscious I don't feel right allowing superproductivity.com access to all the information in my todo-list, as it contains sensitive information and the website being hacked could lead to this information being exfiltrated)
Would such a change make sense to you?
Anyway, thank you very much from Super Productivity, I've been using it for just a day and I already love it!
Best,
Léo
Hello.
Great app (web), can't use the Android version because of broken. Many deprecated APIs are used (which means that the app will not work in the latest androids versions). Also, there are dangerously debugging that need to be deleted (e.g. with proguard rules).
I'm an Android developer and will be happy to help. Rewrite to Kotlin or fix the existing codebase, it doesn't matter.
It would be aesthetically pleasant to be able to close the left menu with the swipe, and not just with the tap on the rest of the space.
When creating a new subtask, there is no prompt to enter a title. Instead the subtask is created with no title, and I have to tap it, tap the title bar, enter the title and tap back.
When creating a top level task a small grey dialog opens, which asks for the title and can include tags and a project. Using that same dialog when creating subtasks would solve the problem.
Hi there,
I've just installed docker version of the web app, and got the question: how to make the android app connect to exactly this (my server) instead of the default one by official domain?
Hey hey @lrq3000 ! Could I maybe ask you to have another look at this? I am try to get this to work on my phone which runs on android 9. Unfortunately there the permissions dialog is never opened and without it it doesn't seem to be able to write the file.
I'm eager to see the filesync feature make it to an android release. I'm guessing it is soon to be released, or perhaps it is not yet deemed to be stable enough for a release.
A release, possibly a beta or unstable release. Unstable release could be released as a separate app, or alternatively on a custom fdroid repo.
Building an apk myself.
Once opened, whenever I have to close the app it compulsorily asks me to finish the day and move the done tasks to archive or just stay.
It would be great to have a check box kind of a thing in the settings where one could opt for closing the app to "finish day" or just keep everything as it is until returned to by opening the app.
Something like:
I found that the app I always sending a request to https://app.super-productivity.com at the app start. And btw, it breaks if the internet is off on the phone when you open it first time.
Could you specify, why the connection is needed and if it's possible somehow to manage this behavior?
App Crashes in Samsung M51 with a pop up "This app has a bug. Please clear cache." Even after clearing cache, it keeps crashing. It is opening for some seconds then closes automatically.
Version 17.0
Just install the app
Steps to reproduce the behavior:
App should run smoothly
Add any other context about the problem here. e.g. related issues or existing pull requests.
I use the windows version all the time. When a task is running next to the title are three icons: Remove from my day, Completed, Show additional info. In Android version haven't found a way to complete a task as there are no such icons visible.
Version of the Action where you are encountering the issue.
I am running Super Productivity 7.16 for Android on Redmi Note 10 pro , which runs Android 12 SKQ1.210908 and MIUI Global version 13.0.16.
Steps to reproduce the behavior:
There should be a ✔️ icon so that the task or subtask can be completed.
It is a great program. Thank you all!
Thank you so much for great app, today i've switched to it from taskwarrior and gnome-pomodora because got tired of its bugs after each gnome update.
The Android (both F-Droid and GPlay versions) lack critical feature for me the LocalFile sync in order to can keep same copy of tasks on both devices.
Can you please add LocalFile sync.
As an alternative maybe we can specify our own path for user_data if it is compatible with PC version.
When a side panel is opened, such as the side navigation bar or the task bar or notes bar, pressing the Back button on the Android interface should close the side panel, but instead the panel is ignored and the app goes to the previous page in history or it closes down if on the Today page.
Android 11 in AVD emulator.
As usual, I can work on the Android side. But here the web app needs to be modified to add required callbacks: one to hide each bar + one to query the state of each bar. But I'm very inexperienced with typescript.
I tried to register a new callback inside android-interface.ts
:
androidInterface.hideNavBarCallBack = () => {
androidInterface.showToast('Received hideNavBarCallBack new');
androidInterface.layoutService.hideSideNav();
androidInterface.layoutService.hideNotes();
androidInterface.layoutService.hideAddTaskBar();
androidInterface.showToast('Received hideNavBarCallBack end');
console.log('Received hideNavBarCallBack end');
};
But the calls fail (the showToast() work fine).
Also I would need access to selectIsShow*.
If somebody can implement these changes or suggest how to do so, I would be happy to fix this issue in the Android app, so that we get a fully functional native behavior with the back button (extending the work of #27).
I would like to sync the user data folders with Syncthing. For that, I need to know where the user data folder is in Android.
I checked under Android/data/, looking for something like a com.superproductivity folder, but couldn't find anything.
Also, there is not option for automatic backup in the Android app, so I wasn't able to find the path like I did on Linux.
Could you tell me where the user data folder is?
Thanks
This project doesn't use github to release official apk. As of now the most official sources for apk are Google Play and F-Droid. Neither are recommended for privacy [1]. Further apps in the official F-Droid repository often fall behind on updates [2].
Release official apk with github release. We already have the version tags.
This would mean that the most up-to-date apk would always be available via github releases.
Forget about privacy and up-to-date releases?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.