Can the appID in appgallery change? - huawei-mobile-services

I use the push kit to send notifications to Huawei devices. As you know, when using API, it is necessary to give an appId in the link as follows. "https://push-api.cloud.huawei.com/v1/app_id/messages:send"
I will define a firewall rule for this link. So I was wondering if the appId might change. Because if appId changes I will have to change the definition as well.
Could you please give me information on this subject if I ask?

That app_id in the link is the identifier of the app receiving your push messages.
Once an app is registered with AppGallery and gets allocated an app_id, then this identifier cannot be changed anymore. During the whole life of the app inside AppGallery, app_id stays the same.
In conclusion, if you target just one app, app_id will not change in the link. But maybe at some point you wish to send push messages to a new app you develop, with its own app_id different than the original one - case in which the difference will be reflected in the link.

Related

I have Registered App ID but still it shows You have no eligible Bundle IDs for iOS apps. Register one here

I have Registered AppID.
Using Wild card and without Wold card also.
this is not first time i am creating app ID and submitting it on appstore.
But after registering appID on developer.apple.com
and when i try to add new app on itunesconnect.apple.com
it all time shows "You have no eligible Bundle IDs for iOS apps. Register one here."
I have created 4 appId for This.but till msg not disappears.
Logging out and back in of iTunes Connect fixed this for me.
seems a problem with iTunes Connect Contracts and payments. Here is a quote
Had the same problem. Just had to update my contract & tax info and accept the new iAd contract and everything worked again (Even though I don't want to use iAd at all).
Seems to be working for them. Not sure though.I am gonna check it out.
I guess there is something wrong with iTunes Connect now. I can't add new app either. Itunes connect doesn't see any of my recently added APP_STORE provisioning profiles.

Facebook Authorize not working on free version of app

I have a free and paid version of my app on itunes but as the free version has in app purchase I cant use the same bundle id across the two apps and therefore the only way I can see of adding facebook to the free app is having a second facebook app registered?
I have done this but for some reason when calling [facebook authorize: permissions] my app boots up the facebook app but returns straight away to my app, not getting in to any of the handleOpenUrl functions or even asking the user for permissions. The code is identical line by line to the paid version of my app with the only difference being the appID that is used. Any ideas what would cause this? Facebook did work on both apps until the recent updates.
After further playing around with this code I have found it works if I tell it to not use the FB App and to instead use safari authorisation. Still failing to see why I can use the app on one app but not another :s
Log in to developers.facebook.com and check your iOS bundle ID for your free app carefully. Make sure the bundle ID you tell Facebook is exactly what your app thinks it is. If it's not identical, the new Facebook app will not allow your app to authenticate.
You can have multiple iOS apps use the same Facebook app. Check this link..
https://developers.facebook.com/docs/mobile/ios/build/#multipleapps
There are three steps:
Add the additional bundle id in your apps "iOS Bundle ID" file in your faceBook app settings.
Then in your iOS apps, use the 'urlSchemeSuffix' option in the 'initWithAppId' method.
Modify the URL Schemes property in the info.plist.
The link explains it in detail. No need to register a 2nd app with Facebook.
Hope this helps.

Is It Possible To Add A "Rate This App" Link To My App?

Here's what I'm trying to do: I have a button on the settings page in my app - I want this to direct users to the review/rate page on the app store.
I know this is possible using [[UIApplication sharedApplication] openURL: .... ]; but my app is unreleased as of yet, so I don't have a URL to use.
Is it possible to implement this functionality for an unreleased app, or would I have to wait and include it as an update?
Thanks :)
The URL below is what you're looking for.
Just replace the 368754825 after id= with your app's Apple ID from iTunes Connect. This will take you right to the review page and won't have all the redirects like a normal link. Your App's Apple ID will not change between now and when it's on the store.
http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?id=368754825&pageNumber=0&sortOrdering=1&type=Purple+Software&mt=8
Update:
I tested the link I posted more than a year ago. It still works. The idea is that it won't work until your app is live. I know there's some concern about putting this link in and shipping before actually verifying it works, but it's the best option for having a review link in a 1.0. You can alternatively submit a 1.0.1 update (with link) right after 1.0 (without link) is approved which means you're only missing out on about a week's worth of reviews.
This is newest format for creating review form links on iOS (only works for iOS devices) [tested on 4.2]
itms-apps://ax.itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?type=Purple+Software&id=412843648
Replace the final string of 9 numbers with your app's application ID from iTunes connect or your iTunes url. This link when launched from an iOS device takes you directly to the reviews
Yes you can add a link.
What I did for one of my apps that wasnt released yet was point to a certain URL, like: http://www.wrightscs.com/ios/myapp/review.html which just contained an http redirect.
Once my app was released and I had the iTunes Store link, I just updated the review.html page with my apps URL.
So now my app opens the review.html link, but in return gets redirected to my app in the app store.
First of all you have all the data about your app when creating it on iTunes connect. The thing you need here is the "Apple ID" (you can find it on iTunes connect under the app information).
After taken this number you can use it inside your app (even hard-coded) asking users to rate it or any other thing you want to do with it.
You can use this code for doing so, This method would open the rate page for your app on the App Store without opening safari on the way like other methods here (I've put all code which seems easier to understand sometimes):
static NSString *const iOSAppStoreURLFormat=#"itms-apps://ax.itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?type=Purple+Software&id=%u";
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:[NSString stringWithFormat:iOSAppStoreURLFormat, (unsigned int)YOUR_applicationID]]];
Where YOUR_applicationID is the one you took from the app store (Apple ID).
I suggest you test that with a working app (active on the app store, even not your, You can use this one for example: 474785950) and change it afterwards. Pay attention to download the app you are rating to your device/account (You can always know the Apple ID of working apps from the link itself : http://itunes.apple.com/us/app/i-ruler/id474785950?ls=1&mt=8 it's the number just after the "id").
Moreover, For this topic I have some other things that should be considered:
1. Apple can reject your app if you are asking users to rate your app with 5 stars, Many developers does that and don't get rejected but I've been rejected couple of times just for that. Beware!
2. Asking users for just a rating mostly doesn't have a good effect, Great feedback comes only after the user used the app and really enjoyed that (users are really used to popups asking them to rate and just skip it). Also if user want to skip this process for now you want to try asking him later, And most importantly you want to ask the user to rate your app after an update (that is super important because rating is for each version!). To solve this case I suggest using iRate (or build something custom using that as starting point) which is very easy to integrate and it can ask for rating only after several days/opening times etc. and remembers to do that for each version. Can download it from: https://github.com/nicklockwood/iRate/tree/master/iRate
I think that the direct link to 'write the review' is undocumented. It is better to give link to the app and it will be up to user to write the review.
You can get the link to your app from your account in iTunes Connect.
You will get the link once you add a new application (not necessarily upload and make it live). That link will open your app regardless of the platform (iPhone, Mac, PC).
That link will not work un till the app is live.
This method worked for me!
Swift 2 version this code works for iOS 9:
let appId = "12345678"
let url = "itms-apps://itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?type=Purple+Software&id=\(appId)"
UIApplication.sharedApplication().openURL(NSURL(string: url)!)

facebook connect for ios question authentication application id and secret

perhaps a stupid question, yet...
We're using the "new" ios facebook connect sdk (https://github.com/facebook/facebook-ios-sdk) and a few questions come to mind.
In the old sdk, you would have to pass a "secret key" (known only to you) in order to obtain a session so that you could use the facebook api, this made sense.
With the new sdk, all you need to pass is "Application Id" and then the user logs in, then he is able to post any message and it will appear as if my application (the facebook application identified by the application id) posted it.
This makes little sense to us, if someone obtains our application id (not mentioned to be a secret anywhere), he/she will (without any problem) have the ability to post as if he was the owner of our facebook application.
Can someone explain this and how this is prevented using this new SDK?
a few more issues we're unclear about are:
in the facebook application
settings, there is a choice between
"Native application" and "HTML5 /
mobile web" currently ours is set to
HTML5/Mobile web (which is the
default) what's the deal here?
perhaps this correlates to the
previous issue?
there are two more settings: "iOS Bundle ID" and
"iTunes App Store ID" it is again
unclear what these are used for.
Currently none of these 2 are set in
our app and we're able to submit to
user walls without a problem using
the "application id" only in our
iPhone app.
Any tips and hints appreciated!
thanx,
-tzurs
iOS Bundle ID is used to prevent that from happening. You specify the bundle id in your info.plst (e.g., com.your_company.your_app) so Facebook knows that your iPhone app is authorized to use your Facebook appication.
iTunes App Store ID is used to create a link from your Facebook application's page to your iPhone app on the app store.

Uploading an updated version of app to the store with new app id

Our app is already there in app store. We now have integrated push notification support to our app and this requires new app id to be created, because our existing app id has got asterisk symbol in it. To enable push notification, app id should not have asterisk at the end, instead it has to have an unique name. So we decided to create a new app id which has got push notification enabled.
But if we do so, will we be able to upload our app as an update to our existing app which is there in the app store?, or our new submission will be considered as a new app? or what other problems we will be facing?
Thanks in advance!
We've gone through similar issues, and I'd like to put a disclaimer here that we don't actually have anything released yet, but we were able to use the same bundle identifier with a new app-id and a new provisioning profile, and it did overwrite the old app on the phone that had the old version.
I don't think the changed app-id will make a difference After all, if you have 10 different apps using the asterisk ID, they are still considered 10 different apps, so the app-id is probably more specific to the signing end. The Bundle-id is what determines the app's identity on the device itself, and so I think it's the same in the app store.