Iktwo / QuteLauncher

QML Android Launcher
GNU General Public License v3.0
130 stars 31 forks source link

Wrong version number in latest release #2

Closed IzzySoft closed 8 years ago

IzzySoft commented 8 years ago

Hi Isaac,

just want to let you know that the .apk of release v0.03 internally still is showing v0.02:

package: name='com.iktwo.qutelauncher' versionCode='2' versionName='0.02'

As this is an issue with package managers (which might either refuse to install the new version and/or always show the same version as update), you might wish to fix that. Moreover, the app lacks an icon :)

Meanwhile, to draw some attention to your project (and make it easier for people to test new releases), I've included your app with my repo, updates will automatically be fetched from Github (usually within 24h after you release them). I wish you good luck with your project!

Iktwo commented 8 years ago

Thanks for letting me know.

I had several ideas but did not find enough people interested on the project and that's the reason I've not been updating it.

I'll fix the version code and check what's wrong with the icon, as I do have one.

I wanted first to have a 1:1 replacement for Launcher2, some of things actually proved to be very challenging. Like adding support for widgets, I think it is possible but not an easy task.

If you have concrete ideas on what things to improve please let me know.

Thanks!

IzzySoft commented 8 years ago

Thanks for the fast response! As for the icon, I see the "big one" on your Github page. But as you can see on the page in my repo, it is not automatically detected by the F-Droid server software (I'm no Android dev, so I cannot tell what's missing there; my guess is a line in your AndroidManifest.xml:

<application android:hardwareAccelerated="true" android:name="org.qtproject.qt5.android.bindings.QtApplication" android:label="QuteLauncher" android:theme="@style/AppTheme" android:icon="@mipmap/ic_launcher">

Does the @mipmap/ic_launcher resolve? Inside the .apk, I cannot find much in the res/ folder (not a single icon). No item named ic_launcher* in the entire archive. And the only .png files I can find are in assets/--Added-by-androiddeployqt--/qml/QtQuick/Controls/Styles/Base/images/. All the res/midmap-* folders are missing (so are the res/values* folders).

Iktwo commented 8 years ago

Hmmm interesting. I am not sure what are the requirements for F-Droid to detect the icon, I'll take a look at that. The icon is definitely there under android/res/mimap-xxxx

The things that are under the direction you mention are added by Qt. When I build it I do get the icon, I'll update a couple things tonight and I'll release a new apk.

IzzySoft commented 8 years ago

The icon is definitely there under android/res/mimap-xxxx

In the repo, yes – but not in the APK file. Just unzip it and check for yourself:

$ ls -1
AndroidManifest.xml
assets
classes.dex
lib
META-INF
res
resources.arsc

$ ls res/
layout

$ls res/layout/
splash.xml

I'll update a couple things tonight and I'll release a new apk.

Great :) Then I'll check again tomorrow. Fingers crossed! :thumbsup:

Iktwo commented 8 years ago

Just released a new version. Nothing really new but I added analytics to see who uses this.

The icon is there. Now you have to build with gradle to get the dependancies. Try building with Qt Creator to see if you get the icon or not. If you still can't see it let me know.

IzzySoft commented 8 years ago

Thanks, Isaac – confirmed: Icon is there now, and version number matches release! Btw: I don't built the .apk myself: as initially reported, I take it from your project's releases/ dir.

Btw, interesting to know that the Android Support v4 module can mean analytics. That explains the network permissions it requires. I'm no big friend of tracking users, but I can see where that's useful in your case. Thanks for declaring that on the project's main page for transparency!

Also thanks for the quick fix! And further good luck with your project!

Iktwo commented 8 years ago

For some reason I thought you were building it.

I did not think a lot about the tracking, but I can see that being annoying.The network permission is to upload the tracking data ( which by the way does not allow me to identify you as a user), in the end I do want to have it in there because the plan was to have a theme catalog that you can browse from the application itself.

I also added push notification support, this allows me to send a message to the users to let them know that there is something new.

I am going to try to build 2 versions, one with all those things stripped out and another one with the actual thing I would like to see to gather usage data. I'll try to update it tonight, in case I am not able to just give me a couple days.

IzzySoft commented 8 years ago

Thanks a lot for considering that! I didn't expect you fishing for personal data (or the app wouldn't be in my repo). As stated, I can see how, especially in the early stage, such feedback is valuable to the developer. And while a toggle to switch it off always leaves some doubt with the user, having two distinct versions (one maybe even without the INTERNET permission) definitely builds up trust – and the user is free to decide whether to participate. An alternative option I usually recommend is making things modular: having the base app privacy-focused, and provide all else as Plugin/Addon.

Take your time: it's clearly stating its alpha state, so noone will blame you. Depending on how strong you focus on privacy, you could also think about making two different "releases" (and even marking the "debug" version "pre-release").

However you decide, my auto-updater would pick the top-most (first listed) file of the latest release, with "pre-releases" (those with the red badge) only being picked if there's no "final release" (green badge) on the page. So if you shuffle the order, we'll have some fun :) (no worries, I can always switch to manual mode – but then updates will only make it to the repo every now and then).

Iktwo commented 8 years ago

I was able to figure out how to build 2 flavors. From now on the names you can expect to see in each release are:

qutelauncher_full.apk

qutelauncher_noanalytics.apk

Qt Creator expects a different name so I am not able to sign the packages when building from it, at least I can generate them and manually sign them.

IzzySoft commented 8 years ago

Cool, thanks! So now I need to figure how to tell my auto-updater that. Do both packages share the same package name (i.e. com.iktwo.qutelauncher), and thus are interchangeable (i.e. a user could decide starting with the _noanalytics to get a feeling, then decides to apply some trust and switch to the _full via update)? Ah, looks like :) Now I'd just wish the _noanalytics.apk would sit on top, so my auto-updater fetches that :) Just manually updated the repo to v0.05.

Iktwo commented 8 years ago

Yes. Same package name, same version, signed with same key. You can ignore the one with analytics.

IzzySoft commented 8 years ago

Great. Will see to add a corresponding rule to my auto-updater then :)