-
Notifications
You must be signed in to change notification settings - Fork 497
Smartisan os #8110
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
Simbiat
wants to merge
7
commits into
matomo-org:master
Choose a base branch
from
Simbiat:SmartisanOS
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Smartisan os #8110
Changes from all commits
Commits
Show all changes
7 commits
Select commit
Hold shift + click to select a range
4b508a6
Added Smartisan OS https://en.wikipedia.org/wiki/Smartisan
Simbiat a291a0b
Add Smartisan OS to Android family
Simbiat 421eca1
Smartisan OS tests
Simbiat 786f3c7
Merge branch 'master' into SmartisanOS
Simbiat f55fdb5
Sort versions, double quotes, restore readme
Simbiat 156a4b7
Merge branch 'SmartisanOS' of https://github.com/Simbiat/device-detec…
Simbiat 29ce7c5
Double quotes
Simbiat File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Those regexes are looking like device fragments, rather than OS fragments. Do those devices not allow updating the OS, are they really fixed to one specific version? 🤔
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No idea, I never had one of those. I linked versions based on https://en.wikipedia.org/wiki/Smartisan
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hm. Looks like they have listed the latest compatible versions, so it might not be the initial version the device was shipped with. Not sure if that would be detectable taking the reported android version into account 🤔
As Smartisan is a custom android rom I'm also wondering if it can be installed on other devices or if those smartisan devices allow installing other android roms...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I mean, theoretically all of custom ROMs can be installed on all devices, the question is how difficult it is to do. And whether it matters much for our purposes, I guess. Yes, this does not mean the library can accurately detect OS for these devices, and it won't detect this OS for other devices (yet), but that's arguably true for other niche items as well.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sure. That might be a more general decision I guess. We currently haven't maintained any OS based on device fragments. @liviuconcioiu @sanchezzzhak What is your opinion on that?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think is best to only detect OS name in this case, since devices allow upgrades.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
so should I remove versions from everywhere?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Smartisan OS is a custom shell (user interface) developed by Smartisan Technology (founded by Luo Yonghao), which is layered on top of the Android operating system. Smartisan OS is not a separate OS, but a heavily customized Android shell, similar to MIUI, EMUI or ColorOS.
Compare list:
OTHER
🔹 Official UI Skins from Smartphone Manufacturers
If we plan to add Smartisan OS, I would change the structure of the versions section to mapping
Example:
The only thing we've added to the OS by model is FireOS.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I know that it's not a separate OS, but to me it looks like all Android "skins" are still considered "ROMs", which implies that they are different versions of the OS, similar to how different Linux distros are different versions of Linux (even if we forget that Android is one, too). Otherwise these would be launchers. The scope of changes may be small, I agree, but still.
So question is more broad: should custom ROMs be treated as separate OSs or not, thus implying that information for other devices may need updating as well? IMHO - yes, but do not enforce it because of difficulty of detection and maintenance. If it is known that a certain device (or a set of devices) had a certain version of the OS with relative "uniqueness" - add it to the library. If not - identify it as generic Android.
For Smartisan OS specifically, I think it would mean that we use regex to match both model and Android version where possible, and match only Android version where it's a 1-to-1 match (so most likely oldest versions and maybe the latest one).
If that's fine I can update this PR, and can try to do a separate PR for ROMs from the list above and from https://en.wikipedia.org/wiki/List_of_custom_Android_distributions (where possible, and not too time-consuming).