I'm currently in the process of reading the excellent "Lessons Learned in Software Testing: A Context-Driven Approach". Early on the following is mentioned. Test common threats before exotic...
I'm currently in the process of reading the excellent "Lessons Learned in Software Testing: A Context-Driven Approach". Early on the following is mentioned.
Test common threats before exotic threats.
Seems reasonable enough. That said, it got me thinking It'd be cool to generate a list of such threats for future devs/testers to draw on. So...I'm calling on the collective experience of any Tilders involved in iOS or Android development to lend a hand.
In your time working on mobile, what issues have you encountered that you would you classify as exotic? I.e those issues that infrequently arise but when they do can cause major damage. Any and all help is appreciated.4 votes
In the rare chance you haven't heard of Flutter, here's the link: https://flutter.io Flutter just officially left beta with v1.0 December 4, last year. The code is written in Dart, and deploys on...
In the rare chance you haven't heard of Flutter, here's the link: https://flutter.io
Flutter just officially left beta with v1.0 December 4, last year. The code is written in Dart, and deploys on Android, and iOS (and will run natively on the rumored Fuchsia OS).
So for those of you that have used Flutter or are currently using Flutter.
- What are you working on?
- Why'd you choose Flutter?
- What do you like about Flutter?
- And what do you dislike about Flutter?
I'm working on a niche art app. I myself do not do that type of art, but knowing people that do, I wanted to create a tool to fill in the lackluckster market for Chromebooks and Android.
I chose Flutter because:
- I wanted to try something new, and what newer than something that was (at the time) in beta?
- Custom Views in Android are a hassle.
- I will be able to release on both Android and iOS (semi-)natively without having to code it twice.
Here's what I like about Flutter:
- Layouts are really simple.
(though you can easily let it get clustered if you don't think too much about it.)
- Design isn't an afterthought.
Animations are built in (and simple), themes aren't hard-coded, and Material Components get more attention here. (Still waiting for Shapes on Android)
- It's fast by design.
Flutter uses its own custom rendering engine (Skia). I've never experienced any stutter with the built-in components, and when I caused lag (with heavy I/O) Flutter/Dart had tools in place for me to narrow down exactly what was causing it.
What I don't like about Flutter:
- It has poor mouse/trackpad support.
Right clicks, not a thing. I can workaround this with a double-click/long-click, but for a desktop OS, this isn't optimal. Scrolling, that's panning, this should be differentiated. There's a difference between using a scrollwheel and moving finger around on the screen. According to Flutter there is not. There's also currently no support for mouse hovers which I have needed very much.
There is a pull-request for adding support for all of these, but the developer hasn't done anything since code review.
- Keyboard support, while there, is lackluster.
Ctrl, Shift, Alt. These have to be gotten with the meta code. There's no built-in function for checking those. Text fields don't support the tab key to navigate. And text formatting (bold, italic, etc.) isn't possible with text fields without the use of a library (or making it yourself).
I was trying to think of a third dislike, but I can't. My complaints are on missing APIs for Chromebooks. That's it. I really like Flutter, I plan on using it more, and if they won't add support for mouse/keyboard, maybe I'll have to contribute.
I'd love to hear what your thoughts about it is.12 votes
Or phone, or after an OS reinstall, etc. Just got to thinking about it because I did a fresh install of Arch on my chromebook the other day, and I'd be curious what other people's priority...
Or phone, or after an OS reinstall, etc. Just got to thinking about it because I did a fresh install of Arch on my chromebook the other day, and I'd be curious what other people's priority software installs are. For me, after the basics like drivers, it's xfce, Firefox, Transmission, Libreoffice, and VLC on linux. Pretty much the same on Windows, plus a few utilities like 7zip, PuTTY, and notepad++. For Android installs I grab nova launcher, Hangouts Dialer, F-Droid, NewPipe and MoonReader before anything else.
EDIT: Forgot firefox on android, as well as ublock origin on all platforms.
Also not completely sure if this belongs more in ~tech or ~comp.17 votes
I'm going to be flashing a custom ROM on my Nexus 5X device, and I was just curious if I'm understanding all the components involved. I currently have CopperheadOS on my device, but that ROM may...
I'm going to be flashing a custom ROM on my Nexus 5X device, and I was just curious if I'm understanding all the components involved. I currently have CopperheadOS on my device, but that ROM may be dead based on current events. I'm not switching because of this news, but mainly because I just want to try something else for the hell of it. I think I'm going to make the switch to Lineage, but there are way more options involved versus flashing CopperheadOS.
It seems the main components to consider when flashing are the following:
- The ROM itself (CopperheadOS, Lineage, PureNexus, etc.)
- The custom recovery (TWRP, etc.)
- The kernel (ElementalX, Franco, etc.)
- root (magisk, etc.)
- Play Services (OpenGApps, etc.)
CopperheadOS was kind of it's own package, so I didn't have to consider all of these other options.
My understanding is the minimum decisions I need to make if I want a custom ROM, is picking the ROM itself, and a custom recovery. In my case I'm going for LineageOS and TWRP.
Choosing a custom kernel seems to be optional. I think I might go with Franco on this one based on the little research I've done. But to flash a custom kernel, I think I need root, right? So now I'll need to get root access which requires another tool. I was going to go with Magisk based on not much. Just seems to be common. So that's 4 main things there. The ROM (LineageOS), the recovery (TWRP), the kernel (Franco), and root (Magisk). I personally don't want any Google services on my device, so I'm fine with skipping that part. I currently don't have any installed, and I'm doing fine without them.
So does my view on this seem correct? Are all the things I mentioned necessary for what I want to do? If I want LineageOS then I need a custom recovery right? If I want a custom kernel, then I need root which requires a separate tool, right? Just making sure I'm not doing more than I need to if I decided to go through with this. As a side convo, please recommend whatever ROMs, kernels, or root tools that you want. I have a Nexus 5X, and I'm hoping it doesn't bootloop after I'm done doing all this flashing =)9 votes