We would like to find a way to migrate a public app to a new custom app distributed via Apple Business Manager. As we understand, this is currently not possible.
One idea discussed with your team would be to generate a code in the (old) public app, which would then be used to activate a discounted version of the custom app allowing customers to make the move.
For this idea to work, we would also need to disable the public app, once the code was generated.
Another idea would be to use some proof of purchase (electronic receipt?) to do something similar, again the question is how to disable the old version. Otherwise the customer would have two licenses.
We are talking a fairly large number of licenses to migrate, so this should also be as smooth as possible.
Looking for more ideas to achieve the goal: Move an existing app to a new custom app under Business Manager.
Post
Replies
Boosts
Views
Activity
Should one migrate to NSCollectionViewGridLayout
from NSCollectionViewFlowLayout if there are Drag & Drop operations to reorder cells, or to insert new ones from an external source (i.e. another CollectionView).
Is there sample code for NSCollectionViewGridLayout and Drag & Drop?
When running test cases I get inconsistent behavior with .doubleTap recognized about half the time as a single tap. Clearly breaks my UI tests.
Here the code fragment:
uiTestApp = XCUIApplication()
uiTestApp.launch()
let texts = uiTestApp.staticTexts
XCTAssertTrue(texts["hello"].waitForExistence(timeout: 2))
sleep(1)
texts["hello"].doubleTap()
Any tips for avoiding this? I already added .waitForExistence and a sleep(1) to make sure the element is on the screen. Did not help.
Is there a way to combine ScrollViewReader and LazyVGrid in order to scroll to a selected item?
It looks like ScrollViewReader only works with ONE column designs like list.
Ideally, something like this would be ideal, but does not work currently.
ScrollViewReader { scroller in
LazyVGrid(columns: columns) {
ForEach(viewModel.tileArray, id: \.id) { thisTile in
MyTileView(viewModel: thisTile)
}
}
.onAppear {
scroller.scrollTo(viewModel.selectedTileID, anchor: nil)
}
}