Hello,
Our app rejected by following reason:
Guideline 4.3 - Design
We noticed your app shares a similar binary, metadata, and/or concept as apps previously submitted by a terminated Apple Developer Program account.
Submitting similar or repackaged apps is a form of spam that creates clutter and makes it difficult for users to discover new apps.
Next Steps
Since we do not accept spam apps on the App Store, we encourage you to review your app concept and submit a unique app with distinct content and functionality.
Resources
Some factors that contribute to a spam rejection may include:
Submitting an app with the same source code or assets as other apps already submitted to the App Store
Creating and submitting multiple similar apps using a repackaged app template
Purchasing an app template with problematic code from a third party
Submitting several similar apps across multiple accounts
Learn more about our requirements to prevent spam in App Store Review Guideline 4.3.
iOS App 1.0App Version
Rejection Reasons:
4.3.0 Design: Spam
The application is 100% developed by our team and I am 100% sure of it. How can we do it ? Please help.
General
RSS for tagExplore the art and science of app design. Discuss user interface (UI) design principles, user experience (UX) best practices, and share design resources and inspiration.
Selecting any option will automatically load the page
Post
Replies
Boosts
Views
Activity
Hello! I am developing an ebook reader iOS app that uses c/c++ codec as a page renderer.
The codec uses TrueType as a font rendering engine that requires access to .ttf (or .ttc) files.
Currently, I supply TrueType with fonts embedded in the app package, so they lay within the app sandbox.
The codec supports the whole unicode plane and many languages that ebooks may use, but the fonts I supply don't have some of the important glyphs (i.e. katakana or hangul).
I see that iOS has its own font storage, located in /System/Library/Fonts/ directory. The codec is able to parse this directory and read .ttf files located inside, using these fonts as a fallback in the case when the supplied fonts can't draw certain glyphs.
I use opendir and fopen(in "rb" mode) as a way to read the data, and it works well.
Does this type of access to the system directory violate the sandbox rule for an app distribution, and, if yes, is there a way to get access to stored .ttf files not violating the mentioned rule?
Hi, I've been trying for an hour to turn the symbols in sf symbols from left to right to right to left, I'd appreciate some help
Hello there,
I have a couple of question about Apple Pay guidelines:
• if we offer Apple Pay payment method in our app, can we disable the selection (I mean the method selection NOT the Payment button!) IF certain condition happens? E.g. the user cannot select apple pay payment method because our basket is not ready yet.
• Are we forced to move the apple pay payment method on the top of our selection? E.g. Cards, Cash On Delivery, Coupon, Apple Pay --> Apple Pay, Cards, Cash On Delivery, Coupon
One last technical question:
• when we start the payment process we are gonna create the request and present the sheet BUT we have to call our backend for pre-authorization, is it allowed?
@objc private func applePayButtonTapped(sender: UIButton) {
// TODO: Is it allowed?
// We need to ask to our backend a pre-authorization and THEN procced with Apple Pay flow
// but this could be done ONLY after the user TAP on BUY with APPLE PAY and BEFORE
// paymentAuthorizationViewController is called.
// Are we compliant to do that?
if PKPaymentAuthorizationViewController.canMakePayments(usingNetworks: FakeData.paymentInfo()) {
let request = PKPaymentRequest()
request.blablabla = blabla
let authorizationViewController = PKPaymentAuthorizationViewController(paymentRequest: request)
if let viewController = authorizationViewController {
viewController.delegate = self
present(viewController, animated: true, completion: nil)
}
}
}
Thanks in advance :)
My app lets users create things with text, and I've included Apple fonts so users can format their text with them. These were fonts I found in the Font Book app that comes with macOS. My assumption is that these, like the San Francisco font, can be distributed with apps.
Do I need to attribute these fonts to their creators and publish a license in my "About" page? If so, where do I find the license(s) and what is the proper way of publishing them? Is there anything else I should know?
Please let me know if this should've been posted under a different topic and tag
This is a follow-up to my previous question: How to attribute/credit Apple Fonts added to app?
In that previous post, I misremembered what I did and said I found fonts via macOS' FontBooks, when instead I came acrossUIFont.familyNames. Since these are included via UIKit, the legal implications should be different.
I looked at various license agreements that govern iOS app development but haven't found anything mentioning fonts. Since these are included as part of UIKit, its reasonable to assume that developers are allowed to include these fonts--but in what ways?
Am I allowed to let users create, say, documents with these fonts?
Am I only allowed to display these fonts?
There are 84 fonts, and judging by their FontBook entries, there is a wide range of licenses and restrictions. It seems unnecessarily harsh to have every iOS developer verify each one and figure out which they can legally keep if they want to offer their users access to all (for, say, a text-editing app). There must be some overarching rule that supersedes/encapsulates them, but this rule isn't clear to me after hours of research. I'm not a lawyer, and I don't think Apple expects every app developer to consult their lawyers on whether they can use system fonts.
I'm about to send an email to Apple's legal team (I will post their response here if allowed), but in the meantime I want to hear what other devs think about this.
In Xcode, entering UIFont.familyNames returns the following:
["Academy Engraved LET", "Al Nile", "American Typewriter", "Apple Color Emoji", "Apple SD Gothic Neo", "Apple Symbols", "Arial", "Arial Hebrew", "Arial Rounded MT Bold", "Avenir", "Avenir Next", "Avenir Next Condensed", "Baskerville", "Bodoni 72", "Bodoni 72 Oldstyle", "Bodoni 72 Smallcaps", "Bodoni Ornaments", "Bradley Hand", "Chalkboard SE", "Chalkduster", "Charter", "Cochin", "Copperplate", "Courier New", "Damascus", "Devanagari Sangam MN", "Didot", "DIN Alternate", "DIN Condensed", "Euphemia UCAS", "Farah", "Futura", "Galvji", "Geeza Pro", "Georgia", "Gill Sans", "Grantha Sangam MN", "Helvetica", "Helvetica Neue", "Hiragino Maru Gothic ProN", "Hiragino Mincho ProN", "Hiragino Sans", "Hoefler Text", "Impact", "Kailasa", "Kefa", "Khmer Sangam MN", "Kohinoor Bangla", "Kohinoor Devanagari", "Kohinoor Gujarati", "Kohinoor Telugu", "Lao Sangam MN", "Malayalam Sangam MN", "Marker Felt", "Menlo", "Mishafi", "Mukta Mahee", "Myanmar Sangam MN", "Noteworthy", "Noto Nastaliq Urdu", "Noto Sans Kannada", "Noto Sans Myanmar", "Noto Sans Oriya", "Optima", "Palatino", "Papyrus", "Party LET", "PingFang HK", "PingFang SC", "PingFang TC", "Rockwell", "Savoye LET", "Sinhala Sangam MN", "Snell Roundhand", "STIX Two Math", "STIX Two Text", "Symbol", "Tamil Sangam MN", "Thonburi", "Times New Roman", "Trebuchet MS", "Verdana", "Zapf Dingbats", "Zapfino"]
Hello,
I noticed a small mistake in the Human Interface Guidelines (HIG).
On the page HIG > Components > System Experiences > Widget > watchOS Widget Dimensions, scroll down to the bottom. In the "watchOS widget dimensions" section, the sizes in the table are in pixels (px), not points (pt) actually. However, the table header indicates the sizes should be in points (pt).
Page link:
https://developer.apple.com/design/human-interface-guidelines/widgets#watchOS-widget-dimensions
For example, the widget size in the Smart Stack on a 49mm watch should be 192x81.5 pt (or 382x163 px), not 382x163 pt. This size can be verified with the information provided here:
https://developer.apple.com/documentation/watchos-apps/supporting-multiple-watch-sizes/.
https://developer.apple.com/documentation/watchkit/wkinterfacedevice/1620974-screenscale
Hello everyone,
I'm working on a fun project for my teacher and want to give my software an Apple-inspired look. Specifically, I'm trying to create image buttons similar to Apple's design (as shown in the image).
I need a button with an image that darkens its background when the user hovers over it with the mouse. Any suggestions on how to achieve this effect would be greatly appreciated.
For now, I have this code :
import SwiftUI
struct StudentRow: View {
@Environment(\.modelContext) private var modelContext
var student: Student
@State private var isHover = false
var body: some View {
HStack {
Text(student.name)
Image(systemName: "xmark")
.opacity(isHover ? 0.9 : 0.1)
.bold()
.onTapGesture {
deleteStudent(student, modelContext: modelContext)
}
.onHover { hovering in
isHover = hovering
}
}
.padding()
}
}
However, I'm not entirely satisfied with the outcome of this code.
(Trust me, the outcome is the same when using the magnifying glass icon)
plz help
Is it just me or I prefer the old box shaped control icons on my control panel, I would be happy if developers would notice my feedback and I wish them to implement a settings that would allow to change the icons to be changed into box or circle.
HI,
I have an older app that used a button with an image in a storyboard that is also localized. The image was just a red button with rounded corners, white stroke outline, and two lines of white text. (actually two words on top of each other)
Now I see that I should be able to create this button with the new xcode button features. I want to try that, by removing the old image and just setting the configuration boxes. I see under the Attributes view, there is the setting with my image fileaname,but no dropdown box to set like "none" or an abiltity to remove it right there at the setting of it.
I didn't want to delete the button since it would wipe out the connected code etc. I want to be able to translate the two words to other languages as well.
I can't find instructions for this particular task. I guess it's too trivial but I just not figuring it out. I keep deleting the whole button.
And now the constraints are all gone so I need to use the new xcode to set it backup.
thanks for any guidance with the xcode interface!
Chrissie
Hi Guys,
I saw in iOS 18 (Photos App) that there are buttons (in an scrollview) below the navigation title and inside the navigation bar.
Is there an new API or an method to "clone" this UI without using:
.safeAreaInset(edge: .top, content: {
})
Thanks in advance for any feedback and help!
I am seeing a bug with the use of iOS 18’s Customize Automatic setting.
When swiping from page view to page view forward and back, the apps’ icon version of dark or light change with each return to that page, constantly…first view the app’s icon is light, return view and it’s dark, then return a next time and it’s back to light.
Going further, switching the Customize dark/normal background setting (the sun icon in top left) resolves once clicked.
链接地址:https://developer.apple.com/cn/help/app-store-connect/reference/screenshot-specifications/
Video Playback on iOS 18 public release is asinine. I use video playback to show slow-motion video frame by frame to my students and the video can only be shown at like 3/5 of the screen size (just like Apple fouled up screenshot editing about a year ago)
If you try to view video in the full screen you can’t scrub through and see time stamps or play frame by frame sliding left to right. It’s absolutely ridiculous. 2 out of 3x the video timeline finishes fully right and I haven’t watched the full clip.
Here’s a video showing the issue how at the small default size I can see the entire timeline and play the full video from beginning to end, but when I go to full screen and/or zoom in or move the screen around the timeline doesn’t work and you can’t scroll through the full video!
Need the video to not condense in size on the screen and play the full height / width of the screen. Also not have the text of the location showing above the screen. Way too much clutter. The reduced size of the video for editing issue started with photos several updates ago and now Apple idiotically brought a terrible flaw from photos to videos as well. Ugh.
Hi, i´m trying to get a menu with three rows. The top one should be a HStack with three RoundedRectangle (Red, Yellow and Green). The second row and the third one (both separated with a Divider from the top one) are for edit and delete. But I get five rows, three empty rows plus the edit row and the delete row. The three first rows are empty but they execute the moveTask function correctly. I don't know how to solve this. Can anybody help please?
struct TaskView: View {
@EnvironmentObject var viewModel: BoardViewModel
@EnvironmentObject var languageManager: LanguageManager
@State private var isEditing = false
let task: Task
var body: some View {
HStack(alignment: .center, spacing: 8) {
Text(task.title)
.font(.system(size: 16, weight: .medium))
.foregroundColor(.primary)
.lineLimit(4)
.multilineTextAlignment(.leading)
.fixedSize(horizontal: false, vertical: true)
Spacer(minLength: 0)
Menu {
ColorButtonsView(task: task, viewModel: viewModel)
Divider()
Button(action: {
self.isEditing = true
}) {
Label(languageManager.localizedString("edit"), systemImage: "pencil")
}
Button(action: {
viewModel.deleteTask(task)
}) {
Label(languageManager.localizedString("delete"), systemImage: "trash")
}
} label: {
Image(systemName: "ellipsis")
.font(.system(size: 20))
.foregroundColor(.gray)
.frame(width: 30, height: 30)
}
}
.padding(.vertical, 8)
.padding(.horizontal, 12)
.background(Color.white)
.cornerRadius(10)
.shadow(color: Color.black.opacity(0.1), radius: 3, x: 0, y: 1)
.sheet(isPresented: $isEditing) {
EditTaskView(task: task, viewModel: viewModel)
}
}
}
struct ColorButtonsView: View {
let task: Task
let viewModel: BoardViewModel
var body: some View {
HStack(spacing: 10) {
ForEach(Column.allCases, id: \.self) { column in
Button(action: {
viewModel.moveTask(task, to: column)
}) {
RoundedRectangle(cornerRadius: 5)
.fill(colorForColumn(column))
.frame(width: 30, height: 30)
}
}
}
}
private func colorForColumn(_ column: Column) -> Color {
switch column {
case .toDo:
return .red
case .inProgress:
return .yellow
case .done:
return .green
}
}
}
Hello,
Whenever I swipe down on the homepage to pull up the search bar, and go to type something in it, it’s really glitchy and buggy. Oftentimes the search bar keeps reloading and I can’t seem to type more than one letter at a time without an issue. Please look into this.
Who on Earth okayed this new photo gallery design? I can’t find anything, scrolling is not smooth, there’s a bunch of content categories I will literally never view that I can’t remove from the gallery, this is EXTREMELY frustrating. How can I revert back to iOS 17?
The following icon has been introduced in Safari's address bar for iOS 18:
I’d like to use it in my app to guide users on how to enable my Safari extension, but I couldn’t find it in SF Symbols beta 6.0 (99).
Is this because it’s still in beta and will be available for third-party use later, or is it a private icon that only Apple can use? I hope I just overlooked something.
Hi Apple. I got some 3-4 dots appearing on extreme left and right side of the screen of my ipad after iOS 18 beta update. I need some help
It would be a great innovation to incorporate a Card Reader into both iPhones and Apple Watches. The user could open the card reader app on his watch or phone, enter the amount to be paid into his nominated bank account (eg £15) ready for the purchaser/customer to tap his card to make the contactless payment. It would simplify my everyday life enormously because I hardly ever carry cash these days.