‘iPhone开发’ 的存档; 分类

UniT for iPhone (1.0正式版已经提交AppStore审察,9月6日更新)


Title.png

UniT (Universal Twitter),t现在不止代表Twitter了,还代表着微博,t.sina…/t.ifeng…/t.sohu…, 所以,这是一个通用的微博客户端,支持 Twitter, 新浪微博,搜狐微博,嘀咕,雷猴,人人网将要支持腾讯微博…(只是将要,没最后确定)


程序主页: http://unit.imi.im (建设中,马上就好,开始的图就是一个截图)

Twitter : @trawor


新浪微博: http://t.sina.com.cn/trawor

下载地址: http://cl.ly/2Dtr

1.png IMG_0003.PNG

IMG_0003.PNG IMG_0004.PNG

-----------9月2日更新-----------

增加 人人网支持
增加 Twitter OAuth支持
增加 自动侦测粘贴板

修复 Twitter 8月31日后不能发布bug

-----------8月29日更新-----------

1.0快要成型了!!!!!

网站设计快要完成了 :) 到时候UniT就有个家了

  • 增加 动画效果 设置
  • 增加 自动更新 设置 (有新版本会自动提醒 而不用再去我网站刷了, 包括以后AppStore上架后, 会自动去更新)
  • 增加 繁体中文

  • 修复 状态栏提醒 (实时显示发送情况等, 显示电池的地方)
  • 修复 Tab前后切换用户体验

  • 改变 编辑框如果里边有文字的情况不加动画
  • 改变 UI细节更新

  • 感谢国家
  • 谢谢 @JackieQi @weilianxiaoyang
  • 谢谢所有人, 没想到大家这么支持我 :)
  1. 大家都在说 腾讯微博/人人网 我打算在正式版上线后再加上 (很快了)
  2. 如果大家觉得有必要的话 我建个QQ群?? (晕, 我不会建)

-----------8月26日更新-----------

第一个测试版 0.9.4 刚出炉的, 热乎的

ipa格式, 大家知道怎么装吧 :) (我说的不是B)

第一次拿出东西来现眼, 不要嘲笑 :) 现在还有很多工作要做, 感觉1.0的目标现在只实现了60% 但是, 这个程序最后肯定会是一个全能,通用的客户端.

已知问题:

  1. 状态栏提醒失效. (就是现实电池状态地方的那个小云彩, 本来好好的, 但是一到真机上就不灵了) 不能显示提醒信息, 但是后台的工作是正常的, 所以点了发送没见反应, 可能已经发送成功了. 不过最近两天我会修复这个问题
  2. 1代和2代设备上的动画效果有一点点卡, 所以我会在设置里加一个动画效果开关.
  3. 人人网/做啥 没有同步成功, 先暂时屏蔽他们了(只是暂时).

-----------8月15日更新-----------

先声明一下,由于时间有限,第一个milestone(9月上线的),我只打算把精力放在雕琢群发功能上,而接收,转发,评论则放在第二个milestone(可能要等一个月时间)。
明天就是8月16日,一个特殊的日子。twitter将要停止对简单密码验证的支持。到时候可能绝大多数twitter客户端api支持都将要失效。我现在已经能用oAuth通过代理来验证了,只是还需要,更多的调试来全面支持twitter。不过我会尽快让大家用上,至少能发出去。

另外,可能会在8月25日左右开始内测,如果想要帮忙测试的朋友,请给我发邮件或者留言。iPod和1代iPhone最好,因为我现在只有3Gs和iPad,好多性能问题测不出来。

更新图:(这里面有好多的动画效果,截图体现不出来,等功能完备了后我回做一个录像)

可以有选择的对已经绑定的帐号进行更新(那个对勾)。

-----------分割线--------------

好长时间没有更新了。一直忙,忙里偷闲,UniT for iPhone 即将上线。现在正在赶工。赶归赶,但是我一直抱着完美的心态去做,所以,质量不会受影响。从像素级的美工,到字母级的代码(晕,没这么表达过),到任何细节(很快会有更多细节公布)。我不是一个人在战斗!(还有我女朋友 Popeye)。

UniT (Universal Twitter),t现在不止代表Twitter了,还代表着微博,t.sina…/t.163…/t.sohu…, 所以,这是一个通用的微博客户端,将要支持 Twitter, 新浪微博,搜狐微博,嘀咕,雷猴,人人网,(只是将要,没最后确定)

估计程序会在8月底完工,现在只完成了30%,计划9月初上线。还有,程序免费!!

如果大家有什么好的建议和对这个程序的要求(如果你的要求被采用,在制作人员/感谢里面,会出现你的名字 *_^ ),或者要提前尝鲜的,请给我留言。



IMIUI update

Just want you know I’m keeping on my fav baby “IMIKit”.

IMIUIKitshot.png

So, recently I focused on the UI part of IMIKit , I have the IMIUICheckBox, IMIUIPieView, IMIUILoadingView & IMIUISwitch

[2010-5-21: REVISION 672]

[NEW] add “IMIUIRandomColor” to get a random UIColor

[NEW] add yesImage & noImage method into UIImage for merged stat image

[NEW] add IMIUIPieView to draw a pie chart

[CHANGED] instead UIImageView with “draw” in IMIUILoadingView to lay down the memory usage (a little bit)

IMIUIPieView:
give as many values and colors to show whatever theme

IMIUILoadingView:
has 3 styles: SingleCell, StepCell & RandomCell

IMIUISwitch:
The native UISwitch is so “huge”, use mine to instead it

The next aim maybe IMIUIContextMenu


动态调用类和方法

举一个很简单的例子:

某公司的有1000名员工, 每个员工的工资都不一样. 发工资的时候, 这要是人工去发, 耗费的时间和精力是非常大的. 所以财务会打一个表格给银行, 委托银行转账.

站在银行的角度, 如果有1000个公司, 委托银行转账发工资. 它应该怎么做呢? 它需要通过电子转账系统, 输入公司名字, 每个员工的工资数, 就可以实现自动转账了.

好, 我们回到 iPhone 开发上来:

我们现在面临的情况是, 有10个类, 每个类里头都有n个方法(前提是方法名有规律可循,比如 setA0,setA1…) 如果挨个去init类, 然后挨个调用方法,这样你一天就不用干别的了.

ObjC里面,我们可以这样实现:

有数组: classNames, 存着 类的名字
方法名都是 setA 开头

for (int c=0; c<[classNames count]; c++) {

NSString *className=[classNames objectAtIndex:c];

id class=[[NSClassFromString(className) alloc] init];

for (int i=0; i<[params count]; i++) {

[class performSelector:NSSelectorFromString([NSString stringWithFormat:@"setA%i",i])];

}

}

两个重要的宏 我加大字体标出来了,然后你可以再发挥一下, 比如传参数

IMIKit 更新到v670

下面是更新列表, 但是还没有稳定, 还需要一段时间~~ 这段时间主要精力在Base上

[2010-5-14: REVISION 670]
[NEW] Add Localized String File in Resources bundle

[2010-5-13: REVISION 669]

[TODO] finish IMIUIContextMenu;

[FIX] IMIUILoadingView memory LEAK,and new method with thread runloop for a better performance

[2010-5-10: REVISION 668]

[NEW] IMINetConnection can dispatch connect events now!

[NEW] Add IMIUIImageHelper,IMIUISwitch & IMIUICheckBox classes

[TODO] finish IMIUIContextMenu;

[TODO] IMIUILoadingView found LEAK!

[2010-04-30: REVISION 667]

[CHANGED]IMINetConnectionDelegate method change to “connectionReceiveData” (Apple rejected me once!)

[NEW] IMINetConnectionDelegate Add property to open/close progress detecting

[2010-04-30: REVISION 666]

[REMOVE] IMIBaseStringHelper REMOVE methods: “toCGPoint” & “toCGSize”

[2010-04-23: REVISION 665]

[NEW] Add ability to detect run stat like “runCount”,”quitCount” or “hasCrashOfLastRunning”

[2010-04-23: REVISION 664]

[NEW] IMIEvent add “description” method

[NEW] UIApplication add “mainWindow” method

[NEW] Add “MEM” mark to log the left memory of device

[NEW] Add “IMIToDo” to log your todo from any line in any class

[2010-04-23: REVISION 663]

[NEW] IMIBaseStringHelper add “URLEncodeString” property

[2010-04-21: REVISION 662]

[CHANGED] rebuild IMIBaseEvent

[2010-04-15: REVISION 661]

[CHANGED] IMIBaseStringHelper IMILocalizedString(key) from #define to Static method

[NEW] Add IMIUIStateBar

[2010-04-13: REVISION 660]

[NEW] IMIBaseStringHelper add MD5,base64 property

[2010-03-23: REVISION 600]

[NEW] Add new script that compile a fat lib fits both simulator and device

解决超长字符串分页问题,公布代码

这是所有做电子书之类的程序都会遇到的一个问题. 前一阵搞一个项目, 花了3天时间搞这个小方法, 总是分页不够精确. 谢谢CCLV@CocoaChina 在老婆生病的时候还给我提供帮助 :) 最后我发现了问题所在: 要用UILabel来显示文字, 而不是TextView!!

我发现盛大起点中文的电子书app还存在分页不准的问题, 李博 要努力噢 哈哈~~

大体思路就是,把字符串分段落, 用段落去填充页. 下面是这个小方法, 希望会对大家有帮助:

-(NSArray*)getPagesOfString:(NSString*)cache withFont:(UIFont*)font inRect:(CGRect)r{

//返回一个数组, 包含每一页的字符串开始点和长度(NSRange)

NSMutableArray *ranges=[NSMutableArray array];

//断行类型

UILineBreakMode lineBreakMode=UILineBreakModeCharacterWrap;

//显示字体的行高

CGFloat lineHeight=[@"Sample样本" sizeWithFont:font].height;

NSInteger maxLine=floor(r.size.height/lineHeight);

NSInteger totalLines=0;

NSLog(@”Max Line Per Page: %d (%.2f/%.2f)”,maxLine,r.size.height,lineHeight);

NSString *lastParaLeft=nil;

NSRange range=NSMakeRange(0, 0);

//把字符串按段落分开, 提高解析效率

NSArray *paragraphs=[cache componentsSeparatedByString:@"\n"];

for (int p=0;p< [paragraphs count];p++) {

NSString *para;

if (lastParaLeft!=nil) {

//上一页完成后剩下的内容继续计算

para=lastParaLeft;

lastParaLeft=nil;

}else {

para=[paragraphs objectAtIndex:p];

if (p<[paragraphs count]-1)

para=[para stringByAppendingString:@"\n"]; //刚才分段去掉了一个换行,现在换给它

}

CGSize paraSize=[para sizeWithFont:font

constrainedToSize:r.size

lineBreakMode:lineBreakMode];

NSInteger paraLines=floor(paraSize.height/lineHeight);

if (totalLines+paraLines<maxLine) {

totalLines+=paraLines;

range.length+=[para length];

if (p==[paragraphs count]-1) {

//到了文章的结尾 这一页也算

[ranges addObject:[NSValue valueWithRange:range]];

//IMILog(@”===========Page Over=============”);

}

}else if (totalLines+paraLines==maxLine) {

//很幸运, 刚好一段结束,本页也结束, 有这个判断会提高一定的效率

range.length+=[para length];

[ranges addObject:[NSValue valueWithRange:range]];

range.location+=range.length;

range.length=0;

totalLines=0;

//IMILog(@”===========Page Over=============”);

}else{

//重头戏, 页结束时候本段文字还有剩余

NSInteger lineLeft=maxLine-totalLines;

CGSize tmpSize;

NSInteger i;

for (i=1; i<[para length]; i++) {

//逐字判断是否达到了本页最大容量

NSString *tmp=[para substringToIndex:i];

tmpSize=[tmp sizeWithFont:font

constrainedToSize:r.size

lineBreakMode:lineBreakMode];

int nowLine=floor(tmpSize.height/lineHeight);

if (lineLeft<nowLine) {

//超出容量,跳出, 字符要回退一个, 应为当前字符已经超出范围了

lastParaLeft=[para substringFromIndex:i-1];

break;

}

}

range.length+=i-1;

[ranges addObject:[NSValue valueWithRange:range]];

range.location+=range.length;

range.length=0;

totalLines=0;

p–;

//IMILog(@”===========Page Over=============”);

}

}

return [NSArray arrayWithArray:ranges];

}

如果您有更好的方法, 希望不吝赐教 :)

帮朋友招聘 iPhone 开发者 2~3 名

工资比较高噢~, 工作地点在北京
现在急需iPhone开发者, 说不定还可以趁火打劫 :) 我啥也没说 啥也没说~~~

有意者 把简历发到我邮箱 hr[*]imi.im

82个iPhone程序绝美网站 启动你的设计灵感

如果您是美工大师, 可以来撇撇嘴.
如果您是程序员, 只能来”哇嗷!” 感慨自己为啥遇不上让自己代码发光的UI设计师
如果您是拿来主义者, 哼哼, 等什么呢 ~~~

我要膜拜!

原文地址: http://iChat.im/S6z6I

01. TeaRoundApp

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


02. Baristaapp

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


03. Billingsapp

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


04. Paraplyapp

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


05. Outsideapp

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


06. Happydangydiggy

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


07. Panelfly

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


08. Typographyapp

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


09. Jqtouch

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


10. Taptapas

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


11. Weathermapsapp

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


12. Scoreloop

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


13. Convertbot

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


14. Digdeepfitness

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


15. Isaidwhat

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


16. Bills

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


17. Magneticpeeps

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


18. Iphone_teaser

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


19. Learnandmaster

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


20. Twiku

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


21. Cellar-ap

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


22. Notaapp

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


23. Tweetie-iphone

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


24. Firetask

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


25. Classicsapp

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


26. TileSudoku

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


27. Birdbrainapp

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


28. Bridworks

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


29. Tweetdeck

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


30. Confessapp

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


31. Prettypoo

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


32. Shakeitphoto

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


33. App-bits

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


34. Tipulator

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


35. Easytasker

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


36. Midnightapps

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


37. Wheeloftea

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


38. 8interactive

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


39. Tripmix

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


40. Spiffingapps

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


41. Broadersheet

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


42. Buzapp

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


43. Syphone

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


44. Junecloud

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


45. Thisfinger

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


46. Suki

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


47. Melatoninapp

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


48. Apps-foobi

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


49. Squarepik

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


50. Claimfreeiphone

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


51. Stoneskipper

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


52. Liftux

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


53. Codedemocracy

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


54. Ego-app

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


55. Glasshouseapps

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


56. Rememberthemilk

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


57. Whisper-app

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


58. Minisquadron

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


59. Outpostapp

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


60. Spendly

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


61. Cookmateapp

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


62. Touchtwit

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


63. Colorstreamapp

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


64. Pedalbrain

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


65. Jilion

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


66. Things

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


67. Dbelement

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


68. Iphone

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


69. Twizzleapp

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


70. Alibahsisoglu

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


71. Theprayerengine

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


72. Tapity

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


73. Futuretap

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


74. Iphone.wordpress

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


75. Snow_reports

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


76. Keypointapp

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


77. Graphik

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


78. Subernova

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


79. Quickmobile

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


80. Pokeseo

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


81. Satisfactionremote

instantShift - iPhone Inspired Website Designs for Your Inspiration



Official Link


82. Yoritsuki

instantShift - iPhone Inspired Website Designs for Your Inspiration

半透明状态栏与导航条的错位

iPhone的状态栏可以设置成半透明, 这是众所周知的, 用UINavigationController,在页面切换时, 如果你的子viewController的view是全屏的(480*320) 就会出现错位, 表现是所以的子view会向下偏移了 20像素 (就是状态栏的高度).

我搜索了好长时间也没有找到答案, 于是自己去看官方文档, 结果发现了这个方法, 这是UIViewController的一个属性.

wantsFullScreenLayout

看字面意思就很好理解(苹果的方法名都很好理解, 还是带时态和语法的 很人性化), 就是”我要全屏布局” 这样错位的问题就解决了

IMIKit 更新 IMIBase到REV 662

最近一段时间实在是太慢, 一直没有更新. 忙里偷闲, 只对IMIBase做了些更新 , 这是 静态库的下载地址 IMIBase.zip 我合并了.a文件 成为一个通用类库, 方法我以前提到了, 见这儿

更新主要有:

[2010-04-21: REVISION 662]

[CHANGED] 重写了IMIEvent 建议所有版本升级, 现在增加支持发送者属性

[2010-04-15: REVISION 661]

[CHANGED] IMIBaseStringHelper IMILocalizedString(key) from #define to Static method

[NEW] Add IMIUIStateBar (这个在IMIUI里 尚未公布, 涉及到了前几天提到的在状态栏加view的方法)

[2010-04-13: REVISION 660]

[NEW] IMIBaseStringHelper 添加属性 MD5,base64

[2010-03-23: REVISION 600]

[NEW] 合并模拟器,真机类库成通用类库, 并添加了编译脚本

还不知道 IMIKit是什么? 看这儿

把UIView覆盖到状态栏上的方法

Reeder

View In iTunes

最近iPhone上的一个新闻阅读软件 Reeder 更新了, 非常好用, 稳定,而且速度飞快. 用了之后 我立马就把原来的 Byline 删除了.

这个软件征服我这个吹毛求疵的人的一个地方, 其实在于一个小细节, 有了这个细节, 我觉得, 这软件值了!

这个细节就是系统状态栏图标, 从来没有一个程序在状态栏上做文章, Reeder 做到了, 新闻的刷新, 图片加载, 在系统状态栏上显示, 显得非常的苹果味道, 如图:

IMG_0177.png

当然, 本文是讨论技术, 不是软件评测.

国外好多论坛上在问这个问题,但答案都是需要Private API之类的,无法上Store的方法. 但是Reeder怎么可以? 我也得可以才行 :) ,经过一段时间的琢磨, 我知道了这个实现方法, 分享给大家.

方法的原理就是, 生成一个新的UIWindow, 把这个Window放在状态栏之上! 其实这个效果早在2.0的时候就能实现, 只是我们这些不求甚解, 学习不扎实的人没有注意到罢了.

那具体怎么做, 我先卖个关子, 大家自己根据这思路研究一下, 其实, 很简单, 很简单, 我几天后公布答案 :) 不要抢答噢 嘎嘎~~~

——————————–

公布答案:

首先 继承 UIWindow, init的方法: 关键的语句 self.windowLevel=UIWindowLevelAlert;

- (id) init

{

CGRect f=[[UIScreen mainScreen] bounds];

CGRect s=[[UIApplication sharedApplication] statusBarFrame];

self = [super initWithFrame:CGRectMake(0, 0, f.size.width, s.size.height)];

if (self != nil) {

self.windowLevel=UIWindowLevelAlert;

self.backgroundColor=[UIColor clearColor];

[self makeKeyAndVisible];

}

return self;

}

现在 在这个window添加view 就会覆盖到状态栏上了, 你猜对了么??

Page 1 of 612345...Last »
回到顶部

关于我:

  • iPhone 开发者. 自由职业者.
  • 苹果忠实用户. 完美主义者.
  • Email/iChat/MSN/GTalk: i@imi.im
  • Twitter/Sina: @TraWor
  •  

    Switch to our mobile site