My iOS application is rejected. I have changed some basics and now it's ready for the next submit for review but the In-app purchase still in review. Should I submit it again while (In-app purchase) is in review?
Yes you can submit your app when it is in review. Make sure you have uploaded your app with proper testing.
All the best! :)
Related
I have my in-app product all set up for purchase in iTunes Connect via ti.storekit:
My Appcelerator 4.0 app compiles and deploys to my device (dev profile). The ti.storekit is linked to my app and it compiles. It also seems to execute correctly, in terms of no unhandled exceptions. But it is telling me that it can't find my In-App purchase product. I have tried handing "15 Keys" and also "15Keys" to ti.storekit. I wasn't sure which one it wanted (Reference Name or Product ID) - but anyway neither works.
Here's the documentation I've been following.
And here is the function in ti.storekit that produces the error message:
function requestProduct(identifier, success)
{
Storekit.requestProducts([identifier], function (evt) {
if (!evt.success) {
alert('ERROR: We failed to talk to Apple!');
}
else if (evt.invalid) {
alert('ERROR: Invalid product: ' + identifier);
}
else {
success(evt.products[0]);
}
});
}
The "else if" line is being executed: alert('ERROR: Invalid product: ' + identifier);
What am I doing wrong? Should I be handing it the Reference Name (15 Keys) or the Product ID (15Keys)? And since I have tried both and neither works, how can I troubleshoot this? What am I doing wrong?
EDIT:
I am unclear on 3 things:
1- Should I go into Settings on my ipad and log in to itunes/store with my TEST USER apple sandbox account? I'm unable to do this because it keeps requiring me to enter a credit card. Test credit cards I've used in the past (on other non-iOS systems), such as 4111111111111111 do not work, and I cannot continue and sign in. Not even sure if I'm supposed to do this. If so, what CC credentials can I use? Should I use a REAL CC for this? Based on everything I'm reading in other articles and posts, it says to never link a test account to a CC number...then WHY won't apple let me log in my test user to my apple device (inside Settings) without entering a credit card?
2- I'm not following the steps in https://github.com/appcelerator-modules/ti.storekit/blob/master/ios/example/app.js EXACTLY, because in my app there is nothing to download, nothing to host, etc. In my app, users can buy keys, which are just digital entities in my app -- nothing to download. So I have removed all code/steps that have anything to do with downloading/hosting.
3- Version 1.0.0 of my app is awaiting review in the app store. This version has no ti.storekit and no in-app purchase. Nothing. BUT I'm working on a newer version with all the storekit and in-app purchase stuff in my latest appcelerator 4.0 project. Shouldn't this work in my dev environment, on my connected ipad, in a dev build? The fact that I have 1.0.0 awaiting review, with no storekit stuff, should have nothing to do with my new version in my dev account with storekit, right? Also I am puzzled by this message:
Do I need to submit a new build to Apple before my DEV storekit stuff will work? If so, this seems very strange, as though an app-store release candidate is connected with stuff I have in development in my local environment. Is this message indicating why my dev storekit stuff won't work? My in-app purchase product seems correctly configured, but shouldn't I be able to connect with this in dev/sandbox regardless of the 1.0 app (no storekit) awaiting review in the app store?
Thanks everyone for your help...I must be missing some critical step I'm not seeing.
Did you check if you use the Sandbox for testing?
https://github.com/appcelerator-modules/ti.storekit/blob/master/ios/example/app.js#L86
And are you aware that you have to sign out of your existing App Store account to test?
https://developer.apple.com/library/ios/documentation/LanguagesUtilities/Conceptual/iTunesConnectInAppPurchase_Guide/Chapters/TestingInAppPurchases.html
You have to use the Product ID (15Keys).
I am testing my app in-app purchase feature, when I trigger the buy option
productStore.makePurchaseTransaction(product,quantety);
nothing happens, and non of the following events trigger:
productStore.addEventListener(TransactionEvent.PURCHASE_TRANSACTION_SUCCESS, purchaseTransactionSucceeded);
productStore.addEventListener(TransactionEvent.PURCHASE_TRANSACTION_CANCEL, purchaseTransactionCanceled);
productStore.addEventListener(TransactionEvent.PURCHASE_TRANSACTION_FAIL, purchaseTransactionFailed);
I don't have a clue to what is the error, when I ask for the product details
productStore.requestProductsDetails(vector);
It fails:
productDetailsFailed[ProductEvent type="productDetailsFail" bubbles=false cancelable=false products=null invalidIdentifiers=myapp.fullVersion,null error=null]
Any advice on this issue will be awesome.
Thanks!
invalidIdentifiers=myapp.fullVersion
Your application doesn't have this inapp purchase ability.
Check itunes for inapp connect.
I am working on an enterprise app which allows users to perform CRUD operations on data
under their profiles, sync it with a backend, share it with other users and view it across multiple platforms.
The app works on 3 platforms
a) as a webapp in browser
b) as a native iOS app on iPad
c) as a native android app on android tablets
Now we want to give the app for free for a trial period of 3 months after which we want to
charge our users a monthly subscription fee if they want to continue syncing their data
with backend. If not, they can use the app as a native app which doesn't have a backend
and they won't be able to share their data across platforms and with other users but will
be able to use the app as a native app with no backend.
For the monthly subscription fee, we wanted to integrate Paypal payments into our ipad
app.
There are 2 gray areas which is causing us confusion
a) Apple might reject the app due to paypal integration as it favours in-app purchases/itunes.
b) Apple states that users can be charged only for "real world service". Does our kind of service qualify?
We prefer getting some definitive information rather than implementing paypal payments and
getting rejected by apple which will set us back by 14 days. Any help would be much appreciated.
I don't think you'll get "definite" information here, since stackoverflow does not have internal information on Apple's strategies. You have to try and find out. I know Apps with monthly subscriptions that use in-app purchases (like Trillian).
If you want to make sure it won't get rejected, exclude the payment process from the app. You are using accounts and some accounts get paid "premium" functionality. Just let the users pay through your website or redirect them to your website if they want to buy from iPad. My guess would be that Apple will otherwise want you to use in-app purchases for the subscription.
About the "real world service", that should be no problem.
I'm uploading the first version of my iOS application for review, Whereas my application has an In-App purchase. I made my app status to Ready for upload while getting in its Binary upload section. But later I got that I have to submit my first In-App purchase along application version.
Now I can't edit In-App purchase section in application version meta data as it states that you can't submit in app purchase with this version as its already submitted for review.
I haven't uploaded binary yet in this version, now two solutions which I think could be
1- I email Apple review team to change my app status from Ready to upload back to Prepare for upload
OR
2- Upload a binary and then reject it but I'm confused that whether rejecting binary would revert my app status to Prepare for upload or Waiting for upload.
I forgot to submit any IAPs with my first binary and got rejected ("can't purchase anything = can't review app"). I also hurried and clicked 'ready to upload binary' without editing IAPs first. I just submitted the same binary again and quickly rejected it. Then, I could edit IAPs, and finally re-submitted the binary one more time. Hope this helps.
1.Upload the current binary.
2.Make it "developer rejected".
3.Upload a new binary of your choice.
I have added a new in app purchase for my app. I have uploaded the screenshot and the status is "Waiting for Review".
I have NOT submitted the binary yet as I wanted to do some testing once the purchase has been approved.
The in app purchase has been in the "Waiting for Review" state for about 2 weeks now.
Does this indicate a problem? Or has anyone experienced a wait as long as this for approval?
Cheers,
You can test the in app purchase without being approved. See the docs how. You should submit a screenshot when you want the in app purchase to be tested. This is, when your app is already submitted.