Jak mogę otworzyć aplikację Wiadomości na ekranie tworzenia wiadomości, z treścią wiadomości z określonym tekstem?Jak mogę programowo skomponować wiadomość?
Odpowiedz
Dzięki @Jatin za znalezienie funkcji openSystemURL(url: NSURL)
.
Oto kod:
let messageBody = "Hello World!"
let urlSafeBody = messageBody.stringByAddingPercentEncodingWithAllowedCharacters(NSCharacterSet.URLQueryAllowedCharacterSet())!
WKExtension.sharedExtension().openSystemURL(NSURL(string: "sms:&body=\(urlSafeBody)")!)
Jestem pewien, że to jest coś, głupie, ale ja nie otrzymuję ten kod do pracy. Kiedy go uruchomię, pokazuje ten błąd: błąd krytyczny: nieoczekiwanie znaleziono zero podczas rozpakowywania wartości opcjonalnej. Jak jest urlSafeBody zero ?! – Charlie
To nie jest 'urlSafeBody', który jest zerowy. Rozpakowujesz 'NSURL' przy użyciu siły, co nie jest możliwe, ponieważ jego ciąg URL jest zniekształcony. Zobacz [moja odpowiedź] (http://stackoverflow.com/a/36567031/4151918), aby uzyskać szczegółowe informacje. –
Benjy's answer is almost correct, ale ma jeden problem.
Od urlSafeBody
nie odwinął, plony interpolacji ciąg
sms:&body=Optional("Hello%20World!")
powodującemu NSURL
inicjalizacji wrócić zero, ponieważ ciąg URL jest źle sformułowany.
Oto działający przykład, który warunkowo rozpakowuje opcje. Eliminuje to możliwość wystąpienia awarii związanych z opróżnianiem opcji wymuszonych.
- 1. Czy mogę skomponować funkcję, która ma ukryty argument?
- 2. Jak mogę programowo wysłać program UILongPressGesture?
- 3. Jak mogę wydrukować wiadomość w Makefile?
- 4. Jak mogę wysłać wiadomość HTML z Cocoa?
- 5. Jak mogę wysłać wiadomość do innego węzła?
- 6. Jak mogę usunąć plist programowo?
- 7. Jak skomponować dziennik git dla oczekujących zmian w TeamCIty
- 8. Scalaz: jak skomponować soczewkę mapy za pomocą soczewki wartościowej?
- 9. Programowo wyślij wiadomość e-mail z funkcji telegramu
- 10. Jak mogę programowo określić mój typ procesora?
- 11. Jak mogę programowo zmienić rozmiar UICollectionView?
- 12. W Androidzie, jak mogę programowo wyłączyć ekran?
- 13. Jak mogę programowo uzyskać bieżący przełącznik śledzenia?
- 14. Jak mogę programowo testować pliki cookie?
- 15. Jak mogę programowo przewinąć listę widoków WPF?
- 16. Jak mogę programowo wyłączyć tryb zgodności IE?
- 17. Jak mogę programowo zamknąć aplikację na iPada?
- 18. Jak mogę programowo wymusić wyszukiwanie w UISearchBar?
- 19. Jak skomponować adres URL do odwrotnego wyszukiwania obrazów Google?
- 20. Jak skomponować żądanie dla metody REST web w skrzypce
- 21. Programowo wyślij wiadomość SMS w telefonie z systemem Windows 8
- 22. Jak "odczytać" wiadomość SWIFT?
- 23. Jak otworzyć programowo programowo
- 24. Jak ustawić programowo programowo?
- 25. Jak mogę utworzyć dużą wiadomość na git merge?
- 26. Jak mogę przeczytać całą wiadomość za pomocą interfejsu Gmail API
- 27. Log4net, jak zalogować pełną wiadomość?
- 28. Przekształcanie HRESULT w czytelną wiadomość
- 29. Dropwizard: Jak zatrzymać programowo programowo
@RMenke Sprawdziłem, czy MessageUI był dostępny dla watchOS (nie jest), i szukał wszelkich struktur, które mogą być równoważne, ale pojawił się pusty. –
Skąd to wywołujesz, czy możesz wywołać otwarcie tego adresu URL: sms: 123-456-8900, ale myślę, że nie możesz wypełnić wiadomości! Https: //developer.apple.com/library/watchos/ featuredarticles/iPhoneURLScheme_Reference/SMSLinks/SMSLinks.html – Jatin
@Jatin 1) Nie wierzę, że możesz otwierać linki w Apple Watch (UIApplication prawdopodobnie nie jest dostępny). 2) Wiem, że możliwe jest zapełnienie wiadomości, wykorzystanie baca, które widziałem. –