Open Phone, SMS, Email, Skype and Browser apps of Android in Unity3d
最近项目需要使用Android的一些基本功能,写插件各种悲剧,google了一下,如获至宝。Nice !
string url = String.Format("tel:{0}",phoneNumber);
string url = String.Format("sms:{0}?body={1}", numbers, message);
string url = String.Format("mailto:{0}?subject={1}&body={2}",email_address,subject,body);
Application.OpenURL(url);
相关引用:
http://www.makebetterthings.com/iphone/open-phone-sms-email-map-and-browser-apps-in-iphone-sdk/
Here is how you can open default Phone app, SMS app, Email app, Maps app and browser app with openURL.
Open default Phone app in iPhone:
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"tel://8004664411"]]; Open default SMS app in iPhone:
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"sms://466453"]]; Open default Email app in iPhone:
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"mailto://devprograms@apple.com"]];
这里注意几点,如果写Android min sdk 如果低的话他会默认继承ActionBarActivity类 ,而不是Activity。
同时会产生一个 appcompont工程来让低版本的库来兼容运行actionbar特性。
如果unity3d 的 子Activity 继承ActionBarActivity而不是Activity会无法启动。
// 此外 最好min sdk 是4.0 ,max sdk 也是4.0
// 因为 minsdk 低于4.0,max sdk 高于 4.0 会丢失一个主题,需要自己 手动导入
2014-9-4 Add Lauch Skype
应用除了tel 进行联系之外 ,还需要 Lauch Skype
googl之
SkyPe官网 有这么一段代码
http://msdn.microsoft.com/en-us/library/office/dn745882(v=office.15).aspx#video
http://msdn.microsoft.com/en-us/library/office/dn745884(v=office.15).aspx
/**
* Initiate the actions encoded in the specified URI.
*/
public void initiateSkypeUri(Context myContext, String mySkypeUri) { // Make sure the Skype for Android client is installed.
if (!isSkypeClientInstalled(myContext)) {
goToMarket(myContext);
return;
} // Create the Intent from our Skype URI.
Uri skypeUri = Uri.parse(mySkypeUri);
Intent myIntent = new Intent(Intent.ACTION_VIEW, skypeUri); // Restrict the Intent to being handled by the Skype for Android client only.
myIntent.setComponent(new ComponentName("com.skype.raider", "com.skype.raider.Main"));
myIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); // Initiate the Intent. It should never fail because you've already established the
// presence of its handler (although there is an extremely minute window where that
// handler can go away).
myContext.startActivity(myIntent); return;
}
实际应用了一下,发现启动不了,也不知道为什么,但是内存是启动了,只是focus没有转到skype上面。
悲剧,继续google,
http://stackoverflow.com/questions/10132556/how-to-start-a-skype-call-from-an-android-app
发现很多办法都大同小异,基本上都是官网的盘版。
偶然之下试了下这个办法,成功启动
http://blog.csdn.net/fhy_2008/article/details/6694219
PackageManager packageManager = getPackageManager();
Intent skype = packageManager.getLaunchIntentForPackage("com.skype.raider");
skype.setData(Uri.parse("tel:65465446"));//Uri.parse("skype:" + UserName + "?call")
startActivity(skype);
Open Phone, SMS, Email, Skype and Browser apps of Android in Unity3d的更多相关文章
- Sample Apps by Android Team -- Amazed
Sample Apps by Android Team 代码下载:http://pan.baidu.com/s/1eSNmdUE , 代码原地址:https://code.google.com/arc ...
- Android测试:Testing Apps on Android
原文:https://developer.android.com/training/testing/index.html 测试你的App是开发过程中的重要组成部分.通过对应用程序持续的运行测试,你可以 ...
- Tech Stuff - Mobile Browser ID (User-Agent) Strings
Tech Stuff - Mobile Browser ID (User-Agent) Strings The non-mobile stuff is here (hint: you get jerk ...
- [WebView其中一项研究]:Web Apps基本介绍
今天,我们开始了解WebView,以及Web Apps发展,从主要内容Android实际的例子来解释正式文件和后续. (博客地址:http://blog.csdn.net/developer_jian ...
- 设置默认Browser
电信A库要求android系统中有多个Browser时,开机自动设置一个默认浏览器,而不用弹出选择框让用户手动选择. 监听开机广播Intent.ACTION_BOOT_COMPLETED, 用Pack ...
- Android 4.4 (KitKat) SMS Apis Change——Android 4.4的一个重大变化
Android团队通过Android开发博客透漏今年会放出Android 4.4 (KitKat) ,同时更新了 SMS 的部分API.博客上讲只有default SMS app才能对短信数据库有写权 ...
- Browser默认书签加载过程
Browser配置默认书签——string.xml中<string-array name="bookmarks" translatable="false" ...
- Browser设置搜索引擎
Browser设置搜索引擎,在com.android.browser.preferences.GeneralPreferencesFragment中加载R.xml.general_preference ...
- javascript: detect mobile devices or browser
http://detectmobilebrowsers.com/ http://hgoebl.github.io/mobile-detect.js/ http://www.hand-interacti ...
随机推荐
- QT 多线程程序设计【转】
QT通过三种形式提供了对线程的支持.它们分别是,一.平台无关的线程类,二.线程安全的事件投递,三.跨线程的信号-槽连接.这使得开发轻巧的多线程Qt程序更为容易,并能充分利用多处理器机器的优势.多线程编 ...
- sort()的多种用法
sort() 方法用于对数组的元素进行排序. 一.默认情况 在默认情况下, sort() 方法按升序排列数组项.为了实现排序, sort() 方法会调用每个数组项的 toString() 转型方法, ...
- Codevs 1231 最优布线问题
题目描述 Description 学校需要将n台计算机连接起来,不同的2台计算机之间的连接费用可能是不同的.为了节省费用,我们考虑采用间接数据传输结束,就是一台计算机可以间接地通过其他计算机实现和另外 ...
- CString使用
1. 空间分配,如果不是它自己的空间分配方式,需要用函数来手动分配空间,否则大家指向同一块地址,取得内容一样 例子,读取文件到CString ,没有给CString 对象分配空间,而且不是他定义的开拓 ...
- Android Audio Play Out Channel
1: 7嘴8舌 扬声器, 耳机, 和听筒 就是通过: audiomanager.setmode(AudioManager.MODE_IN_COMMUNICATION)audiomanager.setS ...
- CSS精粹之布局技巧
1.若有疑问立即检测 在出错时若能对原始代码做简单检测可以省去很多头痛问题.W3C对于XHTML与CSS都有检测工具可用,请见http://validator.w3.org 请注意,在文件开头的错误, ...
- jquery ready()的几种实现方法小结
几种jQuery的ready ()的写法. 1.最常用也是最标准的 $(document).ready(){ }); 2.是上面的简写: $(function(){ }) 很奇怪?为什么能 ...
- PHP安全之register_globals
一.register_globals = Off 和 register_globals = On的区别 register_globals是php.ini里的一个配置,这个配置影响到php如何接收传递过 ...
- openerp学习笔记 自定义小数精度(小数位数)
小数位数标识定义: lx_purchase/data/lx_purchase_data.xml <?xml version="1.0" encoding="utf- ...
- Winform上传下载文件代码
using System; using System.Collections.Generic; using System.Text; using System.Net; using System.IO ...