Open virtser opened 7 years ago
https://gonative.io - Convert your web application into native Android and iOS
Pros
Cons
{
"general": {
"userAgentAdd": "gonative",
"useWKWebView": true,
"enableWindowOpen": true,
"useCrosswalkWebView": false,
"forceScreenOrientation": null,
"initialUrl": "https://app.dorbel.com/search",
"appName": "dorbel"
},
"navigation": {
"androidPullToRefresh": false,
"iosPullToRefresh": true,
"androidShowRefreshButton": false,
"iosShowRefreshButton": false,
"deepLinkDomains": [],
"tabNavigation": {
"tabSelectionConfig": [
{
"id": "1",
"regex": ""
}
],
"tabMenus": [
{
"id": "1",
"items": [
{}
]
}
],
"active": false
},
"sidebarNavigation": {
"menus": [
{
"name": "default",
"items": null,
"active": false
},
{
"name": "loggedIn",
"items": null,
"active": false
}
],
"menuSelectionConfig": {
"testURL": null,
"redirectLocations": [
{
"regex": null,
"menuName": "default",
"loggedIn": false
},
{
"regex": ".*",
"menuName": "default",
"loggedIn": true
}
]
}
},
"navigationLevels": {
"levels": [
{}
],
"active": false
},
"navigationTitles": {
"titles": [
{}
],
"active": false
},
"regexInternalExternal": {
"rules": [
{
"regex": "^(?!https?://).*",
"internal": false
},
{
"regex": "https?://([-\\w]+\\.)*facebook\\.com/login.php.*",
"internal": true
},
{
"regex": "https?://([-\\w]+\\.)*facebook\\.com/dialog.*",
"internal": true
},
{
"regex": "https?://([-\\w]+\\.)*facebook\\.com/v1\\.0/.*",
"internal": true
},
{
"regex": "https?://([-\\w]+\\.)*facebook\\.com/oauth.*",
"internal": true
},
{
"regex": "https?://([-\\w]+\\.)*facebook\\.com/v2\\.0/.*",
"internal": true
},
{
"regex": "https?://([-\\w]+\\.)*facebook\\.com/checkpoint.*",
"internal": true
},
{
"regex": "https?://([-\\w]+\\.)*facebook\\.com.*",
"internal": true
},
{
"regex": "https?://([-\\w]+\\.)*plus\\.google\\.com/share.*",
"internal": false
},
{
"regex": "https?://([-\\w]+\\.)*twitter\\.com/.*",
"internal": false
},
{
"regex": "https?://([-\\w]+\\.)*instagram\\.com/.*",
"internal": false
},
{
"regex": "https?://maps\\.google\\.com.*",
"internal": false
},
{
"regex": "https?://([-\\w]+\\.)*linkedin\\.com/.*",
"internal": false
},
{
"regex": "https?://([-\\w]+\\.)*google\\.com/maps/search/.*",
"internal": false
},
{
"regex": ".*",
"internal": true
}
]
},
"toolbarNavigation": null
},
"styling": {
"icon": "https://gonativeio.s3.amazonaws.com/uploads/7c677jw0a0ax4_1506599218696.png",
"iosHeaderImage": "images/logo1.png",
"showActionBar": false,
"showNavigationBar": false,
"iosSidebarFont": "Default",
"androidHideTitleInActionBar": false,
"navigationTitleImage": false,
"iosTheme": "light",
"androidTheme": "light",
"menuAnimationDuration": 0.15,
"transitionInteractiveDelayMax": 0.2,
"hideWebviewAlpha": 0.5,
"disableAnimations": false,
"androidShowSplash": true,
"androidSidebarBackgroundColor": "#FFFFFF",
"androidSidebarForegroundColor": "#777777",
"androidActionBarBackgroundColor": "#bdbdbd",
"androidActionBarForegroundColor": "#000000",
"androidPullToRefreshColor": "#777777",
"androidAccentColor": "#31124b",
"androidSidebarSeparatorColor": "#585858",
"androidTabBarBackgroundColor": "#bdbdbd",
"androidTabBarTextColor": "#000000",
"androidTabBarIndicatorColor": "#000000",
"iosTitleColor": "#333333",
"iosTintColor": "#31124b",
"iosSidebarTextColor": "#333333",
"androidLaunchImages": {
"mdpi": "https://s3.amazonaws.com/gonativeio/images_generated/1506599383807_n9z38y0qr0ehg_180x180.9.png",
"hdpi": "https://s3.amazonaws.com/gonativeio/images_generated/1506599383808_zczwd1vuwd662_270x270.9.png",
"xhdpi": "https://s3.amazonaws.com/gonativeio/images_generated/1506599383808_kregqufe1h9ju_360x360.9.png",
"xxhdpi": "https://s3.amazonaws.com/gonativeio/images_generated/1506599383808_6a8574n9y64va_540x540.9.png",
"xxxhdpi": "https://s3.amazonaws.com/gonativeio/images_generated/1506599383809_43dg75jg23g94_720x720.9.png"
},
"iosLaunchImages": {
"ios_launch_640x960": "https://s3.amazonaws.com/gonativeio/images_generated/1506599347899_rmbefqqwf272p_640x960.png",
"ios_launch_640x1136": "https://s3.amazonaws.com/gonativeio/images_generated/1506599347899_t16288xf2t52a_640x1136.png",
"ios_launch_768x1024": "https://s3.amazonaws.com/gonativeio/images_generated/1506599347899_x17b7xpqc9vnj_768x1024.png",
"ios_launch_1024x768": "https://s3.amazonaws.com/gonativeio/images_generated/1506599347899_ke23ytndtpzma_1024x768.png",
"ios_launch_1536x2048": "https://s3.amazonaws.com/gonativeio/images_generated/1506599347899_h8826ve2yw9ty_1536x2048.png",
"ios_launch_2048x1536": "https://s3.amazonaws.com/gonativeio/images_generated/1506599347899_hz7hj0hmv97k0_2048x1536.png",
"ios_launch_750x1334": "https://s3.amazonaws.com/gonativeio/images_generated/1506599347899_h7jgk53mbd53c_750x1334.png",
"ios_launch_1242x2208": "https://s3.amazonaws.com/gonativeio/images_generated/1506599347899_1xxqpczvtdv98_1242x2208.png",
"ios_launch_2208x1242": "https://s3.amazonaws.com/gonativeio/images_generated/1506599347899_gmamhth0cabh6_2208x1242.png"
},
"androidStatusBarBackgroundColor": "#31124b"
},
"forms": {
"search": {},
"loginConfig": {
"formSelector": null,
"loginIsFirstPage": false
},
"signupConfig": {
"active": false,
"formSelector": null
}
},
"permissions": {
"usesGeolocation": true,
"androidDownloadToPublicStorage": false,
"enableWebRTC": false
},
"performance": {
"webviewPools": [
{
"urls": [
{
"disown": "reload"
}
]
}
]
},
"publishing": {},
"services": {
"push": {
"active": false
},
"analytics": {
"active": false
},
"parse": {
"active": false,
"pushEnabled": false
},
"facebook": {
"active": false
},
"oneSignal": {
"active": false,
"notificationExtension": false
},
"registration": {
"active": false,
"endpoints": [
{
"url": null,
"urlRegex": null,
"dataType": [
"parse",
"oneSignal"
]
}
]
}
}
}
Lets research native wrapper solutions for our web application, in case we want to release it as real mobile app.
The mobile native push messages interface is important to make use of to notify users of actions in the system (like chat messages)/
Lets research the following options by creating small POC: