Redirect user to mobile version of site - mobile

How can i redirect users with older devices to a simplified (no css ) version of mobile site [ m.site.com ] , and newer devices like Iphone or Samsung Galaxy to a more modern one ?
[sp.site.com ]

I would recommend feature detection.
Test the features you need for the 'newer devices' and redirect to the older if there is a lack of support.
You can test features using Modernizr
redirection is as easy as:
<script type="text/javascript">
<!--
window.location = "m.site.com"
//-->
</script>

Related

Ionic Framework and Mobile Web

The problem: build a somewhat complex form that submits data to MySQL+PHP back-end. Requirements include:
Accessible from browsers running on mobiles, tablets and desktops
Must be completely platform independent; works well on Edge, Safari, Chrome, and other modern browsers.
Must be implemented so that in the future, native versions can be implemented using the same code-base.
Based on my research, Ionic seems to be the best fit. However, I don't see anything about using Ionic for web-apps on their official website.
Questions:
Can Ionic be used to meet the above requirements? If yes, what is the best way to use Ionic for web-apps? Is there an official guideline from Ionic for this?
How else would you go about meeting the above requirements if not using Ionic?
Thanks.
Ionic is built for developing mobile apps / progressive web apps. If you are looking for something which can be accesses through browsers Angular is the best option. Progressive web apps also will be something you can look into. Except for native functionalities in mobile and routing in browsers , angular code will be reusable.

How to integrate Adobe Creative SDK Feather Editor in Ionic/Cordova

I am creating a mobile hybrid app with the Ionic framework, and I'm trying to integrate the Feather Editor. My best scenario would be that a Cordova plugin was available, since the Adobe Creative Web SDK is not optimized for mobile, but the Android and iOS SDKs are.
There are some legacy plugins, some of which are only for iOS, and the following one, which seems to be outdated, since the Feather Editor wouldn't launch:
https://github.com/m1is/AviaryCordovaPlugin
I also tried the following angular directive:
https://github.com/m00s/angular-aviary
This directive works for web, but on mobile it is not working properly, I guess because of the fact that the web SDK is not optimized for mobile. What happens is that the Feather Editor launches but it takes too much space, not fitting into the mobile screen. Plus, the tools are not showing, and a loading icon is shown forever.
So I guess that the right path would be to create a new Cordova plugin that works with the latest Cordova and Adobe Creative Android/iOS SDKs.
Has anyone tried a different approach?
The Creative SDK team recently collaborated with PhoneGap to release plugins that are compatible with PhoneGap, Cordova, and Ionic.
Among them are the new Image Editor UI PhoneGap plugin and template.
More details are on the Creative SDK blog.
You can get a quick overview of everything on offer on the Creative SDK GitHub page's Plugins section.
I developed this Cordova plugin:
https://github.com/jguix/Cordova-FeatherEditor
It currently supports Android.

Use Google advertising to monetize PhoneGap app (built with PhoneGap Build)

On AdMob, there's no option for HTML5 apps anymore, and on AdSense, mobile apps (even those based on webview, explicitly mentioned) are banned.
How can I use Google advertising to monetize PhoneGap app (built with PhoneGap Build)?
AdMob plugin was not available in PhoneGap Build before, as the old policy did not allow binary files submitted.
But now, they made a great change to their policy (http://phonegap.com/blog/2014/12/09/phonegap-build-new-features/), and now allow you to use the plugins in Cordova plugin registry.
To use Admob plugin in your app, just configure it in your config.xml:
<gap:plugin name="com.google.cordova.admob" source="plugins.cordova.io" />
To display a banner Ad:
if(AdMob) AdMob.createBanner( {
adId:admobid.banner,
position:AdMob.AD_POSITION.BOTTOM_CENTER,
autoShow:true} );
To display a full screen Ad:
// preppare and load ad resource in background, e.g. at begining of game level
if(AdMob) AdMob.prepareInterstitial( {adId:admobid.interstitial, autoShow:false} );
// show the interstitial later, e.g. at end of game level
if(AdMob) AdMob.showInterstitial();
More detailed instructions and example code are documented at its github project homepage:
https://github.com/floatinghotpot/cordova-admob-pro
PhoneGap builds native apps, so you'll have to use the Native AdMob SDK. There are guides on the web on how to do AdMob native implementation. But if you're more into plugins, check out the AdMob plugin for Cordova (Android | iOS).

what are the rules for making mobile friendly website?

I would like to add value to my website that I have developed at the moment so that user can check on their mobile phone.
My questions:
Should I make different template for mobile version and full version one?
Like creating mobile.example.com for mobile version?
Does Opera Mini not support JavaScript? I have a mobile phone that has Opera Mini, it seems that JavaScript was not running. Do all Opera Mini not have JavaScript on it?
Does Opera Mini support full W3C standard HTML and CSS? Or do they have a different one?
Is there any emulator to view or test website in different mobile phones? For example: Iphone browser, Blackberry browser, WAP and Opera Mini.
Thank you!!!
Some websites offer an automatic conversion of your existing website. This converted, mobile friendly website can either be hosted at a new domain, or a "mask" can be applied over your existing site. Check out www.webtosmartphone.com, which easily converts basic websites automatically; a quick line of code and your website will be automatically resized and viewable in the most popular smart phones. If it is not converted automatically, you can request for a custom conversion.
It's up to you whether you want to make two different websites for mobile and non-mobile devices. However, if you do so, make sure to have a link from the mobile site to the full site to enable users to switch to it.
Opera Mini does support Javascript which certain restrictions (eg. on asynchronous operations). Be aware that Opera Mini uses a proxy based approach and the JS is executed on Opera's servers which imposes certain restrictions. Plugins like Adobe Flash are not supported.
Basically, Opera Mini supports the same standards as Opera Desktop since they share the same rendering engine (Opera Presto). However, due to device restrictions, some features like CSS rounded corners are not available in Mini. See Opera Mini 5 standards support for more information, but know that meanwhile Opera Mini uses Opera Presto 2.4, the rendering engine used in Opera Desktop 10.53.
For testing websites in Opera Mini, try MicroEmulator which is Open Source and comes with a resizable skin that allows you to emulate different screen sizes.
Hope that helps :)
You should most definitely adapt your output for mobile devices when the content is accessed via a mobile device. Whether you will do it by separating the mobile presentation on a subdomain or a special folder or not is totally irrelevant.
/ 3. Mobile is way more than just Opera Mini. Various mobile device browsers support various degrees of rich content (JavaScript, CSS etc.) You should look into detecting what features are supported by the visitors browser/device and serve the appropriately rich/"poor" content. You should take a look at WURFL and Device Atlas which are two main databases of mobile device useragents which allow you to serve only the content that the useragent can consume.
There are many emulators out there, some better and some worse, that emulate various mobile device browsers. Off the top of my head, the two I've used are Yo Space SmartPhone Emulator (website broken atm) and Mobi TLD's emulator. There are also vendor specific (Nokia, SE) developer tools you should be able to find that emulate the vendor's devices.
Cascading Style Sheets (CSS) are the way to accomplish this. It does mean that you will need to review your site's use of HTML tables, and convert into a CSS based design.
The CSS Zen Garden is an excellent resource for showing what is possible.
A resource to convert your current
site into a mobile device friendly
format is Skweezer.com. Simply enter
your website's URL, and it will
display your website in a
mobile-friendly version by removing
large images, CSS styles and page
elements that will not display
properly. You can use this as a
template, or starting point, for
making a mobile CSS profile for the
site. To provide an alternative CSS
stylesheet for users with mobile
devices, insert the following code in
the head of an HTML document:
<link href="/css/global.css" rel="stylesheet" type="text/css" media="handheld" />
Ref.

How do I test a website design on a mobile device?

I have designed my site with a 900 x 600 fixed background image. On the computer it looks fine. How will it look on a PDA device? Will I have to design it separately for PDA?
How should check whether my site can be browsed effectively from mobile phone?
What should I do?
Try using Opera's "small screen" view (View > Small Screen). This does a pretty decent job of simulating a mobile screen. Try it on Opera's own site. Note that they use a "handheld" type stylesheet that kicks-in when you're viewing on a handheld or switch to small screen mode.
You can download Google's Android SDK for free to test on.
To test on iPhone, see the iPhone Tester. There's a button on the bottom-right to rotate the iPhone into its widescreen state.
The OpenWave Phone Simluator is supposed to be good.
You can try the mobi online emulator.
The Windows Mobile 5.0 SDK for Smartphone contains "Windows Mobile 5.0 based Smartphone Device Emulator images & skin files"
Finally, some general guidance: Web Content Accessibility and Mobile Web: Making a Web Site Accessible Both for People with Disabilities and for Mobile Devices
Instead of browser detection, you can supply alternative stylesheets for handheld devices. With
<link rel="stylesheet" href="small.css" type="text/css" media="handheld">
The advantage is that you only need one version of your site, the difference lies in the stylesheets. You need one additional css, while with browser detection you would need different versions of every page in your site. The downside is that not all browsers support the media attribute for stylesheets. But the most modern browsers do, and the support for it is growing.
If you are interested, I recommend having a look at an A List Apart article.
BTW, if you are not using css yet, switch to it immediately, no matter which solution for your problem you choose. CSS rocks!
You can also get device emulators for the Blackberry range of machines.
Well, you could always throw some detection javascript in there to check the type of browser, then redirect to a different site that is formatted for mobile devices. This seems to be the norm for most sites.
Examples:
Digg.com
Twitter.com
Google.com

Resources