I have seen some games having store page opens in-game as a native window without quitting the game at all.
I have search around and couldn't find anything related to it.
Is there a specific plugin to achieve that or how it can be exactly done? If not how can I add a store view in my Unity iOS game
Example from a random game on app store:
The screen above is inside a game, pressed "Download now" and it showed the other game store page as shown above without leaving the game itself. Pressing "Done" minimizes the popup and let you continue playing normally.
Related
I am a new in Hololens 2 and I build some Unity sample on it.
When start application, it would placed a white box like that.
When stop application, the white box still on here and I need to click X to close it.
I have searched about that, it seem like about uwp application lifecycle?
Is there any method to close it with C# when I quit my application.
Thanks in advance for any suggestions.
It is by design and can only be closed manually, every app starts in mixed reality by placing an app tile in the Windows Mixed Reality home and these tiles persist and stay at their placed location. For more information please see:App model
In addition to this, you can add a custom holographic splash screen for the app, please refer to this link:Holographic splash screen
I m working on this project, the client gave me the task to design the UI and embed videos. The backend code of that application is complete according to the client and the backend code is really poorly written with zero optimization.
The application is working perfectly, the application starts the main form loads axWindowsMediaPlayer form with it self and axWindowsMediaPlayer loads videos through resources. The issue is that in the beginning of each video the media player blinks, like if the playlist have 3 videos it'll blink 3 times and if I run the axWindowsMediaPlayer form separately it doesn't blink at all.
I've no idea what to do here.
Standart windows media player control is way too dated. It's basically good for nothing at this point. I'd just open nuget package list and look for any video player control. In case there is none, you can always just add a chromium-based webview element and play your video in there.
I have a problem with my browser. I play in browser game "DarkOrbit".
I wrote my browser to this game, it is a normal browser without advanced functions.
Look at this now: I can log in my game, I can click start and after that, I can play this game.
It is cool but when I will log out and I even close my app, if I turn it on again, the game is not working.
I still be able to log in but after a click on start instead the screen has been loaded, I can only see a black screen and nothing more. I know this problem is totally strange but I don't know what is going on.
Maybe try using the new WebView Control. Microsoft just released it in their toolkit in May. I have a post about it that explains how to integrate the new control into your program. The control is supposed to be fulfilled through MS Edge instead of IE like the older WebBrowser Control, which means the new control is better optimized for modern websites and won't get random script crashes and errors.
So in this maze kind of game I'm making, I will show the maze to the player for 30 seconds.
What I don't want is that the player taking screenshot of the maze.
I want to do something like Snapchat, or Instagram, how it detects when you take a screenshot of a snap/story.
I'm using C#. It can also prevent user to take screenshot. I don't mind.
Is there a possible way to detect when the user takes screenshots or prevent it in Unity?
No, you can't detect this reliably. They also could make a photo with a digi cam. Furthermore there are endless ways to create a screenshot and the os has no "callback" to inform an application about that. You could try to detect the "print screen" key but as I said there are other screenshot / screen recording tools which could use any hotkey or no hotkey at all. I have never used Snapchat but it seems it's not safe either.
There are even monitors and video projectors which have a freeze mode to keep the current image. You could also run your browser in a virtual machine. There you can actually freeze the whole virtual PC or take screen shots from the virtual screen and an application running inside the VM has no way to even detect or prevent that.
I once had to do something similar. If you just want to do what snapchat did then it can be done but remember that as long as the app is running on anyone's device instead of your server, it can be de-compiled, modified and compiled again so this screenshot detection can be circumvented.
First of all you need to know this about Apple's rule:
2.5.9 Apps that alter or disable the functions of standard switches, such as the Volume Up/Down and Ring/Silent switches, or other native
user interface elements or behaviors will be rejected.
So, the idea of altering what happens when you take a screenshot is eliminated.
What you do is start the game, do the following when you are showing the show the maze to the player for 30 seconds:
On iOS:
Continuously check if the player presses the power and the home button at the-same time. If this happens, restart the game and show the maze to the player for 30 seconds again. Do it over and over again until player stops doing it. You can even disconnect or ban the player if you detect power + the home button press.
On Android:
Continuously check if the player presses the the power and volume down buttons at the-same time. Perform the-same action described above.
You cannot just do this with C#. You have to use make plugins for both iOS and Android devices. The plugin should use Java to the the detection on android and Object-C to do the detection for iOS. This is because the API required is not available in C#. You can then call the Java and Objective-C functions from C#.
Other improvement to make:
Check or external display devices and disable them when you are
showing the maze to the player for 30 seconds. Enable them back
during this time.
When you detect the screenshot button press as described above,
immediate take your own screenshot too. Loop through images on the player's picture gallery and load all the images taken that day.
Compare it with the screenshot you just took and see if they match.
If they do, you are now very sure that the player is trying to cheat.
Take action like banning the player, restarting the game or even
trolling the player by sending their screenshot to the other player. You can also use it as a proof to show that the user is cheating when they complain after being banned.
Finally, you can even go deeper by using OpenCV. When you are
showing the player the maze for 30 seconds, start the front camera of
the device and use OpenCV to continuously check if any object other
than the player's head is in front of the camera. If so, then the
player is trying to take a screenshot with another device. Take
action immediately. You can use machine language to train this.
How far to go depends on how much time you want to spend and how much you care about player's cheating online. The only thing to worry about is players de-compiling the game and removing those features but it is worth implementing.
My Android phone takes screenshots differently. I swipe down from the
top of the screen and select the "Capture" option.
Nothing is always the-same on Android. This is different on some older or different Android devices. You can detect swipe patterns on the screen. The best way to do this is to build a profile that handles each Android device from different manufactures.
For those commenting, this is possible to do. You must do it especially if it is a multiplayer game. Just because a game can be hacked does not mean that a programmer should not implement basic hack prevention mechanism. Basic hack prevention mechanism should be implemented then improved as you get feedback from players.
I beginning with Xamarin and I have a doubt:
is it possible with Xamarin, to block the screen?
Example: my app is playing a video on full screen mode. The user touch the screen or the hard buttons of his device, but the video continue to play like the user hadn`t touched the screen, etc...
The only way to stop the execution of the video, is when he presses some especific button.
Is that possible?
How can I achieve that?