Observing user interactions [closed] - ios

Closed. This question needs details or clarity. It is not currently accepting answers.
Want to improve this question? Add details and clarify the problem by editing this post.
Closed 9 years ago.
Improve this question
I wish to track a set of data my educational app generates based on user challenges. Every nth challenge I want the app to send these metrics to my server so I can observe various things about the app.
Further, and most important, I need to uniquely identify each instance of my app so that I can watch the trends of a single user. I wish to persist this number through the life of the user's interaction with my program in an anonymous kind of way, and persist over multiple removal / installations on the same device.
Bonus points for what your opinion of the standard method of reporting these metrics to a web server are. XML? JSON? Simple NSURL's?
Bonus points for links to relevant Apple Documentation.
DISCLAIMER: (due to past experiences...)
I am relatively new to stack overflow. If this post doesn't conform to the standards of this site, please explain why before voting me off of the island.

You can't tie a device to a user unless you set up a username password combination. Nothing else will work if you expect to handle app removal, installation, or device upgrades.
As for preferred data-type. My preference is JSON. But that's just a preference and you'll get lots of other differing replies. Hence it's a sort of pointless question.

Take a look at this link. It explains what identifiers are constant when and in what situations they are not. He talks about the identifierforvendor and advertisingidentifier that are now the only supported unique identifiers you can access. They took away the UUID tracking as well as the MAC address method. You can still get the device serial number, but that method uses code that will get your app rejected by apple's app store review process.

Related

What is the best way to share real time data between multiple devices for a short time frame in IOS [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 7 months ago.
Improve this question
I have an idea for an application where I would like the following to happen:
A group of people / their devices create a sharing session -->
They can set a time frame for this session (could be one hour or one day, but not long term). -->
Once the session is created they will go through their day capturing the data which I want to be shared automatically between all the devices. -->
At the end of the session each device will be able to choose what of the data collected they would like to keep locally on their device despite who may have collected it. -->
Once each of the devices have saved what they would like, the shared storage would be removed.
What I am struggling on is the best technology for sharing the data. I would rather not have notifications each time data is shared.
I have looked at Multipeer Connectivity as a solution, where each bit of data would get sent to each device and stored locally, but the biggest drawback is the inability to maintain a session in the background, which is likely where the application would reside for the majority of the time period.
Any direction or areas to research would be greatly appreciated. Note: at least to start with I would be looking to implement this in IOS
I would imagine a temporary folder on a web server (kinda like shared cloud folders) would be among the better solutions to this.
Doesn't require physical proximity to other participant. Could be in entirely different countries and it wouldn't matter. There's however nothing stopping you from setting such a limitation anyway.
Would be far easier to implement tech-wise. Especially considering cross-platform support.
You espace many logitical problems, such as storage space on individual devies. Like What happens when participant wants to keep some data, but there's not even enough space to even see a preview of what the participant is missing out on.

How do I create a client server network in Swift, or how do I send a request to another iphone on the app? [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 6 years ago.
Improve this question
I'm trying to create an app like uber, and I'm having trouble with the iphone to iphone connection. How am I to send a request to another Iphone, saying I am your driver! Am I to have riders become accepted, and add them to some database of riders in which drivers can see them? Basically I just want a little explanation on the ways I can use swift to connect iphones, any help is appreciated.
Looks like you've got a decently long way to go, but let's break this down.
Despite how it may seem, phones don't usually talk directly to each other. In these circumstances, an app will contact a central server in order to get information about things around them. The phone (in your situation) would likely contact the server and request a list of nearby drivers and locations. The server would then send a feed of nearby drivers and their locations so that the phone could display the locations of the drivers.
When you request a ride, your phone will tell the server its current location, and potentially the targeted location. A lot of work is done behind the scenes in the server to schedule a driver to pick you up. The server is keeping track of where a given driver is, how many other clients he has in queue, how long the driver would take to get to you, among many other factors. Once it figures out which driver would be best able to serve you, it will contact that driver and tell him to start moving toward you.
Then the server will contact you saying that it has found a driver, and then will send you the feed as to where that driver is in his progress to get you.
So to more directly answer your question, you'll need to start by setting up a server up to do a lot of the work behind the scenes. You can write a server backend in Swift using Vapor, but server-side swift is in its infancy. I'd also recommend looking into Ruby on Rails using the Ruby programming language, or Node.js using Javascript. But none of these are trivial matters.
Given the nature of your question, the problem you're attempting to solve is certainly a lot more difficult than you've anticipated. But don't let that stop you from asking questions like these.

How to get paid in iOS app without a 30% cut [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about programming within the scope defined in the help center.
Closed 7 years ago.
Improve this question
I am developing an iOS app and I would like to receive payments within the app. I am selling a "real" good/service, so my profit margin on each sale is only around 20%. I can't afford to pay Apple 30% on each purchase made within the app.
What are my options for accepting payment without giving Apple a 30% cut?
Disclaimer: I have created and offer a standalone solution payment acceptance solution for small businesses.
The actual answer to the question you asked is, "select and integrate any of the various payment processors", but that's not very helpful.
I would second the other answer about looking for canned solutions unless you absolutely need to control the whole experience.
If you do still want to go down the roll-your-own route, you will need an enhanced vocabulary and some time to research on your own. First suggestion: look for relevant questions/answers on the net for "iOS app payment processing". The search engine of your choice should lead you to many possible answers from which you can refine your question or even, perhaps, find an outright answer that works for you.
You'll need to understand how you expect to capture payment information, process that payment into "money", and how you will manage your back-end. For example, you could use Apple Pay, but that by itself doesn't actually solve any of your actual payment processing issues (not to mention very likely unfavorably restricts your customer base if that's all you do).
Do alternatives like Stripe, Braintree, and more have their own APIs? Yes. Can they be used with Apple Pay? Yes. You could try implementing them then coming back here with specific questions.
Separate out questions like "How do implement Stripe payment processing?" from questions of the type "What are some of the options for knowing when an item needs to be shipped, where to, and when it has been accepted?" (Which won't be appreciated here -- you'll also need to research/write at least an attempt at this before asking.) Each type of question will need to have a "show your work so far" component as well as a clear (as much as possible) problem description in order to get responses that are pertinent.
Real world goods don't need to be set up through in-app purchases. You can use other services such as Stripe or Authorize.net to set up payment flows in your app that way.
Note that you'll most likely also need a web service and server backend aspect as you'll need a centralized location to keep track of your real goods inventory and perform the actual transactions of charging your customers, updating the inventory and starting the process of fulfillment. Of course, this isn't true if you're creating an app to manage payments of your flea market sales, but in that case, you really should be looking to use an existing app solution like Square since you'll still be subject to charges when using Stripe and Authorize as well.

App Store keywords : using "trademark" keywords [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about programming within the scope defined in the help center.
Closed 8 years ago.
Improve this question
I understand that in the App Store rules :
-3.9: Developers are responsible for assigning appropriate keywords for their apps. Inappropriate keywords may be changed/deleted by Apple
-8.5: Use of protected 3rd party material (trademarks, copyrights, trade secrets, otherwise proprietary content) requires a documented rights check which must be provided upon request
I want to use the name of a competitor app as a keyword for my app, but the competitor is complaining that I am doing so (though many other people are also using it too).
For instance(not the real case here), my app is a photo app, I have put "instagram" as keyword.
I believe it's fair to use competitor's name as keyword as long as I don't outrank it. Apple also seems to suggest people to use trademarked name as "descriptors".
What would you suggest?
You are bound to US rules and those of your own country. Assuming rules of the USA and of the UK (I am from the UK which is why I include it here) you can use their trademark as long as you are only using it to draw a comparison or to describe your product, which you are doing here. You cannot use it in such a way that it causes confusion between your product and theirs. By the sound of things here you should be okay.
The only thing to be worried about is that if the other company complains there will be a period where the complaint is reviewed, during that time your app may be blocked from the app store so be prepared to wait while that is resolved.
After writting this I did a quick google and found the link below, it does a better job of explaining this than I have done. Be aware that the information below and in my own answer may not apply in your country. I am not a lawyer, I am only an app developer myself.
http://www.insidecounsel.com/2011/11/08/ip-using-a-competitors-trademark-in-marketing
I don't think it's fair to use competitor's name especially trademarks, copyrights and etc. Apple is doing so to protect your competitor's interest. And many other people succeeding in using it don't implies that you can use it.

What's the difference between a lite version and a demo? [closed]

Closed. This question needs details or clarity. It is not currently accepting answers.
Want to improve this question? Add details and clarify the problem by editing this post.
Closed 6 years ago.
Improve this question
The guidelines for iOS and the Mac App Store state that demo versions of apps are not allowed.
As far as I can tell, a lite version is (most of the time) just a demo with an IAP for the full version (so as to retain progress)
A "demo" app is traditionally a fully functional app that only runs for a limited time or doesn't let you save anything, or is crippled in some way to make it useless beyond being a demo.
A "lite" app is fully functional in its own right. If a user never upgrades to the full version, the lite app must still do something useful, even if it is fairly limited. One critical thing Apple will look at is no part of the UI must be disabled in a lite app. If a bit of functionality doesn't work in the lite version, then it must not be part of the UI at all.
In a lite app you may have a button or other UI element that lets the user upgrade. If the user reaches some limit imposed by the lite version, you may inform the user that they can upgrade if they wish. But never prompt the user out of the blue to upgrade.
A lite app does not require IAP. You can create a pair of apps (lite/paid) instead if you wish.
If you decide to use a single app with IAP to upgrade, don't call the app "Lite". Don't put "lite" in the icon. Because if you do, your customers will hate you once they upgrade the app and it still says "lite" anywhere.
Provided you're not putting any sort of time limit on your application, or removing functionality from the game - it'll pass as a lite version.
The "removing functionality" limitation is one of those ambiguous statements. You wouldn't get away with removing the "Save" function from a text editor, though you would get away with not having a different model of car in a racing game, or by having it as an IAP.
It's all rather subjective

Resources