Post

Replies

Boosts

Views

Activity

Tracking Transparency - clarification on when asking for permission is not required
We're building a modern analytics tool for mobile apps. I personally applause to iOS 14 privacy changes but on the same hand, I'm a little bit worried about opt-in system for tracking as early surveys suggests most users won't opt-in. We'd love to build a tool that both respects privacy in Apple's spirit and gives developers a broad perspective on their business performance. I'd love to hear more clarification on cases where we don't have to ask for permission for "tracking"? Here are a few of gray area cases. Case 1 Do we need to ask for "tracking permission" if: 1) user's activity data is uploaded to the 3rd party analytics tool 2) users can be identified with email and/or identifiers 3) BUT it's only used for developer's business analytics and is NOT SOLD OR USED for advertising? In that case, 3rd party is solely providing a product to persist and analyze the data on developers behalf and it's not selling that data to anyone. ____ Case 2 Do we need to ask for "tracking permission" if: 1) user's activity data is uploaded to the 3rd party analytics tool 2) BUT we're only using anonymous identifiers generated on-device that can't be linked to the device? For example, we generate a new UUID on first app launch and use it to "identify" the user. No ID for Vendor is used.
0
0
845
Jul ’20
Custom SwiftUI view with a two-way binding
Hi folks,I'm struggling to implement a custom view which can take Binding as an argument and implement two-way updates of that value.So basically I'm implementing my custom slider and want its initializer to look like this:MySlider(value: <binding)___What I'm struggling with:1. How do I subscribe to remote updates of the binding value so that I can update the view's state?2. Is there any nice way to bind a Binding with @State property?___Here's my current implementation so far which is not perfect.struct MySlider: View { @Binding var selection: Float? @State private var selectedValue: Float? init(selection: Binding) { self._selection = selection // https://stackoverflow.com/a/58137096 _selectedValue = State(wrappedValue: selection.wrappedValue) } var body: some View { HStack(spacing: 3) { ForEach(someValues) { (v) in Item(value: v, isSelected: v == self.selection) .onTapGesture { // No idea how to do that other way so I don't have to set it twice self.selection = v self.selectedValue = v } } } } }
0
0
885
Feb ’20