Closed chamons closed 1 month ago
This is the Xcode checkbox:
Toggling it does this to the watch extension's Info.plist:
diff --git a/iosappwithwatchapp WatchKit Extension/Info.plist b/iosappwithwatchapp WatchKit Extension/Info.plist
index cae882b..c249513 100644
--- a/iosappwithwatchapp WatchKit Extension/Info.plist
+++ b/iosappwithwatchapp WatchKit Extension/Info.plist
@@ -33,6 +33,6 @@
<key>WKExtensionDelegateClassName</key>
<string>ExtensionDelegate</string>
<key>WKRunsIndependentlyOfCompanionApp</key>
- <true/>
+ <false/>
</dict>
</plist>
As a developer I know how motivating it is to receive the direct user feedback on the bug, so I'll say that I am quite interesting in this, I actually hold off buying Apple Watch till this is completed and Watch 5 is released (and the latter should be fairly soon).
I would release this app as the standalone Watch app: https://apps.apple.com/us/app/speech-central/id1127349155 , https://apps.apple.com/us/app/speech-central-text-to-speech/id1223093645
I think it would be the second Watch app in this category that is not just a remote controller for iOS app, and the first that is designed to work completely independently. Well if this gets on time and no one gets ahead :D
Also I know that it is not just my comment that counts but I still hope that it is helpful.
I will start a new project next month and I will need this feature for a WatchOS app. Does anyone know if they are working to support this feature on VS Mac?
I am sorry to say we currently do not support this feature in Xamarin.iOS @AgustinBonilla , nor do I have a roadmap date to give you right now on such support.
I will pass your feedback up to our PM team.
FWIW I'm about to release a new WatchOS app created using Xamarin and would have released it standalone if I could .... although the inability to debug WatchOS apps in the Simulator because it causes a hard crash when they use HttpClient is more pressing.
I'll try to explain why standalone apps are crucial. If I shipped a watch app with my main app it would be a disaster because:
Overall this is a very major problem, I am not sure how much works it takes to be fixed, but I believe that you haven't considered all aspects above.
Also @DamianMehers and @AgustinBonilla currently there are only two votes for the issue (one is mine) so if you are after this enhancement at least vote for it...
@ivanicin @AgustinBonilla Done, I think. I tend to follow issues I'm interested in. BTW while I'm here, is there any online chat that seasoned Xamarin WatchOS devs hang out in? People that have actually published Xamarin WatchOS apps (mine is Voice in a Can)? I'm aware of WatchOS channel on the Xamarin Chat Slack but there are not many people there.
I tried some tricks to resolve this limitation, but I haven't resolved yet.
I applied the info.plist configuration:
I builded the app with the CLI, forcing the generation of the ipa and the archive, but it generated only the app file: msbuild [ProjectPath] /p:Configuration=Release /p:Platform=iPhone /p:ArchiveOnBuild=true /p:BuildIpa=true /t:Clean /t:Build
I tried to zip the app file and upload to the app store, but I received some errors.
I tried to export the app file to an ipa file, but I recive an error with the export options file:
xcodebuild -exportArchive -archivePath
I found another way to export the app to an ipa, but is deprecated since xcode 8.
I've been problems with all ways and I'm starting to think about that isn't a good idea to develop an independent watchOS app with Xamarin.
Does anyone know any way to generate an independent app with Xamarin?
I am sorry to say we currently do not support this feature in Xamarin.iOS @AgustinBonilla , nor do I have a roadmap date to give you right now on such support.
I will pass your feedback up to our PM team.
@chamons any feedback from the PM team? It would be great to have this feature (well, at least to know when it might be added). For us, this is crucial for choosing Xamarin over native for WatchOS development.
@chamons, @rolfbjarne - after providing extensive feedback on Catalyst in its own thread, I guess that this thread deserves at least some feedback.
I would guess that this is for the order of magnitude simpler than implementing Catalyst. I would also guess that interest for Catalyst is bigger for the order of magnitude. Am I right on this?
Anyway if this can be implemented while not taking some huge resources as I would assume I think it should have a priority considering impact/resources.
Right now I consider to wait some more and then to use Swift if nothing happens (before Xamarin was free for small companies I have already converted part of my then Window UWP C# code to Swift).
While the use cases for Watch apps are surely limited, whomever figures out the right case has a home run for almost hundred million of users. Which is a huge opportunity for Xamarin PR too, with some luck that some developer hits the right target. But in few years that space will narrow down quite a lot and if you want to support this the time is now, not in two years.
How does one up-vote this? This is clearly a major lacuna in Xamarin that it does not support what XCode 11 and watchOS inherently support.
We MUST get a sensible roadmap response. My own development team is recommending dropping Xamarin altogether (we are using it for Android, iOS, MacOS cross-development) - as it appears to be lagging significantly behind the native progression of these operating systems and device support.
@bharatgoenka you upvote by pressing the thumbs up.
As officials don't seem to reply here anymore, I'll provide you with my opinion - it is likely that Apple will promote a new app format for WatchOS 7 that will not be based on extensions. With all of that in mind feature requested here will be a sort of 'dead end' and as such it would be a waste of time to support it especially now when new format is almost there. Whether Xamarin will support this new format - your guess is as good as mine but hopefully it will.
thanks a ton for taking the time out on this one @ivanicin This does make some sense - and yet the silence of the 'officials' are mystifying. My team has enjoyed using Xamarin, but silences tend to lower your confidence - honestly. My assumption is that you are also a user - and with more than just a passing interest (obviously). So seeing some 'involvement' and transparency really helps keep the user-base engaged and confident.
@ivanicin @bharatgoenka I think "not being able to debug on physical watch device" is more critical issue. They should have fixed that issue before this one. Unfortunately, it is nearly impossible to create a stable xamarin watch app.
This has been inactive for more than a year.
Just to note that this is the 4th most upvoted issue out of 664 opened issues, but as one of first three is purely theoretical (research SwiftUI) and other is nearly completed (Catalyst) you can say that it is 2nd most upvoted issue.
Just for the record implementing .NET 6 has fewer votes. But not just that but it is at least 10.000x more complicated. I don't say that it shouldn't have been implemented, but the prioritization is strange at the best. I mean you shouldn't make excuse that you are working on .NET 6 if this is just 0.01% of the overall work and the most wanted feature out there.
By every known criteria this issue should be fixed by now. But officials are not even replying to it for almost two years.
@ivanicin @bharatgoenka I think "not being able to debug on physical watch device" is more critical issue. They should have fixed that issue before this one. Unfortunately, it is nearly impossible to create a stable xamarin watch app.
@onurhazar both issues are important. It is hard to say which one is more important, but I would pick this one. And it seems that more developers agree with me as this issue has more upvotes.
My reasoning is that if you have abstraction of UI and business logic and business logic is tested to work on UiKit, I don't expect it to be buggy on watchOS. On the other hand this particular issue has no workaround.
I would not hold out hope for this - Microsoft are not supporting watchOS in .NET 6, it feels to me like they are not investing in watchOS https://github.com/xamarin/xamarin-macios/issues/8955
@DamianMehers I think that you have received the clear answer there - watchOS is not a priority. All other platforms that get .NET 6 had also setbacks in their development in this period (most notably macOS) and I don't have any big expectations for watchOS, actually I am pleasantly surprised that they seem to be working on watchOS 8 APIs as well as on any other platform.
I am just saying that this particular issue couldn't be ignored by popularity/work required ratio, no matter what. I mean they don't develop Xamarin for themselves but for developers and developers very clearly stated they want this and implementing just this won't break their .NET 6 target dates.
All other platforms got .NET 5 except Xamarin already so by your logic you could say that Xamarin is not supported anymore which would be incorrect. This is not a good sign but there are no signs that watchOS will be surely unsupported in the future either, in that case watchOS 8 wouldn't be worked on.
Understood - FWIW I've moved to Swift and SwiftUI for my Apple Watch apps :-(
Damian
Hello, Sorry for the radio silence here, we've been heads down on .NET 6 support which is a massive effort. As noted on #8955 watchOS is not part of .NET 6 but that doesn't mean that it will not be considered for the future. Right now watchOS will continue to be supported via Xamarin pre .NET 6 as is and we will review the decision and work for future .NET releases.
@rolfbjarne Is that info.plist change all that could be required when building release and submitting to app store if not?
@Lelelo1 not sure I understand the question, but to support independent watchOS apps in Xamarin would require somewhat substantial changes on our side to support it, it's not only an Info.plist change.
@rolfbjarne Please let me know when this independent app support is planned for xamarin .If this is going to consider this would be helpful for existing xamarin app which has watchos app along with it .
@XamarinRPMTeam - We would announce something on this issue if support was announced, no need to poke individual engineers.
We don't support watchOS in .NET, and Xamarin is out of support now, so this will unfortunately not be implemented.
Apple has announced "Independent Apps", where watchOS application can be installed independently of iOS devices.
It appears to be a checkbox in the IDE, but that might require mtouch/mlunch/msbuild changes and reflection in the IDE