GLRouter
[](https://cocoapods. org/pods/ GLRouter)
[](https://cocoapods. org/pods/ GLRouter)
/*
* C-функция, не требует имени класса, прямой вызов
* rto_dsp(NSString *str, BOOL (^handle)(id tgt))
*/
// Переход с текущей страницы на TargetViewController
rto_dsp(@"SCHEME://push/TargetViewController", nil);
// Всплывающее окно TargetViewController на текущей странице
rto_dsp(@"SCHEME://present/TargetViewController", nil);
// <Tools.h>
@interface Tools : NSObject
@end
// <Tools.m>
@implementation Tools
- (BOOL)sendMessage:(NSString *)msg from:(NSString *)from to:(NSString *)to {
BOOL success = (msg!=nil && from!=nil && to!=nil);
if(success){
NSLog(@"%@ 给 %@ 发送了消息: %@", from, to, msg);
}else{
NSLog(@"发送失败");
}
return success;
}
@end
/*
* C-функция, не требует имени класса, прямой вызов
* rto_ivk(NSString *str, void (^handle)(id ret))
*/
// Без возвращаемого значения
rto_ivk(@"SCHEME://invoke/Tools/sendMessage:from:to:?p1=Hello World&p2=Tom&p3=Jerry", nil); // вывод «Tom 给 Jerry 发送了消息: Hello World»
// С возвращаемым значением
rto_ivk(@"SCHEME://invoke/Tools/sendMessage:from:to:?p1=Hello World&p2=Tom&p3=Jerry", ^(id ret){
// ret — возвращаемое значение
BOOL result = [ret BoolValue];
}); // вывод «Tom 给 Jerry отправил сообщение: Hello World».
GLRouter доступен через CocoaPods. Чтобы установить его, просто добавьте следующую строку в свой Podfile:
pod 'GLRouter'
В настоящее время на рынке существует два основных способа внешней маршрутизации для перехода в приложение:
Например: weixin://dl/scan
Преимущество: простота вызова
Недостаток: некоторые браузеры не могут перейти, например, веб-страницы в WeChat; невозможно определить, запущено ли приложение через JS
Необходимо: настроить домен, связанный с приложением, во время разработки iOS
rto_dsp(@"App://push/MyWebViewController?title=标题&url=http://www.home.com/page.html?a=1&b=2&c=3&d=4", nil);
LiGuoliang 36617161@qq.com
GLRouter распространяется по лицензии MIT. Подробнее см. в файле LICENSE.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )