App rejected as spam because using same proprietary engine

I recently submitted an app to the App Store which was rejected as spam (Section 4.3). After speaking to an Apple rep, I learned the reason. The app is based on a propietary cross-platform engine which I have been developing for several years. We are not using any third-party software or 'app templates'. A couple of years ago my son and I collaborated on another project - I did the coding using the same engine, but he did the design and content creation. He published it under his own developer account. We worked together on the new app as well. They are both educational apps. The older one is used for learning algebra, and the new one for memorising language vocabulary. They do not look the same and have completely different content. But App's search engines have detected commonality in the code, because much of the underlying engine is the same, and because we are using different developer accounts, has rejected the latest as spam.

I wondered if anyone else had encountered this kind of issue, and if there is a way round it? Surely many different developers use common engines (eg Unity) and their apps don't get detected as spam? If I decided to publish my engine as open source on Github, would every developer that used it get rejected as spam? There must be some way to avoid this problem.

Resubmit it again

I would resubmit with a note to reviewer explaining the situation.

You could also attach a signed document where the first of you and your son who used the engine in a published app gives the right to the other to use the engine.

After my conversation with the Apple rep where I discovered what the real cause of the rejection was, I replied to the review team on the review page giving a full explanation. Initially I got a pretty inane response thanking me for the information, and suggesting I fix the other issues identified by the review - there weren't any other issues! But after a few hours I started getting messages that the app was back in review, and then that it had been accepted. I have just released the app.

I really feel that Apple need to improve their communication as to the real cause of rejection. I endured 3 weeks of utter discouragement and frustration, until the telephone conversation. Had they made it clear initially that the App had shown up as sharing a lot of common code with one other specific app, I would have have twigged much sooner. But the rejection message was ambiguous, and they failed to give clear answers to the questions I posted asking for more clarification, until the telephone conversation after my appeal had been rejected.

Anyway I am much happier now.

This does leave the original question open however. If different developers use a common, perhaps open source, engine to develop an app, are they going to run into trouble with the common engine code base being detected, and rejected as spam? And what can Apple do to avoid this situation? Or do they actually not want developers sharing a common engine for some reason?

App rejected as spam because using same proprietary engine
 
 
Q