intent

第十一天

扶醉桌前 提交于 2020-03-04 03:47:14
ContentProvider 系统URI 获取手机联系人权限 获取手机短信权限 获取手机图片权限 获取手机上音乐的权限 获取手机的视频权限 权限的判断 广播 获取手机联系人权限 < ! -- 添加获取手机联系人的权限 -- > < uses - permission android : name = "android.permission.WRITE_CONTACTS" > < / uses - permission > < uses - permission android : name = "android.permission.READ_CONTACTS" > < / uses - permission > 点击获取权限 if ( Build . VERSION . SDK_INT >= Build . VERSION_CODES . M ) { requestPermissions ( new String [ ] { Manifest . permission . WRITE_CONTACTS , Manifest . permission . READ_CONTACTS } , 100 ) ; } else { resolverMethod ( ) ; } private void resolverMethod ( ) { ContentResolver

Android activity跳转方式

我们两清 提交于 2020-03-03 11:57:45
方法一:通过SetContentView切换Layout来实现界面的切换,这种方法相当于重绘Activity. protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button btnInsert = (Button) this.findViewById(R.id.btnInsert); //获取btn btnInsert.setOnClickListener(new View.OnClickListener() { //添加监听器 @Override public void onClick(View v) { setContentView(R.layout.activity_insert); //跳转 } }); } 方法二:在一个程序中使用Intent对象来指定一个Activity,并通过startActivity方法启动这个Activity. protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout

Android——Activity跳转

眉间皱痕 提交于 2020-03-03 11:56:28
Activity_main.xml <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context="com.hanqi.text3.MainActivity"> <TextView android:layout_width="wrap_content" android:layout_height="wrap

usbmanger android 底下USB的工作模式

夙愿已清 提交于 2020-03-03 08:43:47
Android USB开发麻烦还是比较多的。 第一种:host模式 这种模式比较不错,由Android设备提供电源,然后与外部设备通信。举个例子来说:电脑连接USB设备,都是这个模式,非常常见的模式。 但是有一个万恶的问题,android接外部USB设备的时候,驱动怎么办?又有那款芯片敢说Android系统支持他们家的芯片,又有哪个厂家说不动android系统装上他们家的驱动,他们家的设备就可以在Android上使用,或许这点上Android很难超越windows。 造成想现状:想加外部设备,都要:重新自己做底层驱动程序--->编译系统--->刷机--->编写android程序--->接入硬件实现功能。 整个一套下来饭都吃好几顿了。还是希望以后android发展发展能向window一样支持多设备驱动吧。 第二种:Accessory模式 这个模式比较揪心,外部设备要供给电源,数据间通信:电脑---手机就是这种模式,手机作为Accessory设备,电脑供给它电源,同时进行数据通信。 恰巧我也是用了这种模式: 程序需要做的: (1)添加Action BoardCast private static final String ACTION_USB_PERMISSION ="com.ukey.USB_PERMISSION"; [java] /**********************

Unity 大版本更新之APK的下载与覆盖安装

萝らか妹 提交于 2020-03-02 22:29:55
   作为一个游戏开发者,更新这个技能是必不可少的!更新分为游戏内的更新,也就是所谓的资源热更包括AssetBundle更新和代码更新,代码其实也是所谓的二进制文件,在安卓上和普通资源文件毫无差异,然而在IOS上差别大来个去了,由于苹果爸爸所谓出于安全性的考虑,不支持JIT,我们也很无奈啊! 如今能绕过去的,只能靠解释器去执行这部分被视为 另类 的代码文件了,能解决的也就是今天各种版本的Lua和ILRuntime了!好了,夜已深,废话不多说了,开始今天正题!!! 1,如何通过Unity进行应用内更新?   应用内的更新也就所谓的资源热更了,从CDN上直接下载就完事了,下载的方式有很多,WWW,WebRequest,HttpWebRequest等,最不推荐的就是WWW,原因一: www.bytes这家伙很占内存,句柄有限,在IOS上文件过多,开的WWW超过句柄限制会有意想不到的惊喜(Bug),Unity官方已逐渐适应WebRequest取而代之了,推荐使用HttpWebRequest,支持断点续传,很是方便! 2,何时进行大版本更新,该如何更新呢?   这个大版本更新要看如何设计了,我们游戏是采用高中低三位来决定该更新哪些东西,例如:当前版本号1.0.1,下次客户端提高版本号到1.0.2或者1.1.0都是资源更新,如果大版本好改为2.x.x则进行大版本更新,如何更新呢?两种方法

android笔记--Intent和IntentFilter详解

独自空忆成欢 提交于 2020-03-02 21:12:24
Intent用于启动Activity, Service, 以及BroadcastReceiver三种组件, 同时还是组件之间通信的重要媒介. 使用Intent启动组件的优势 1, Intent为组件的启动提供了一致的编程模型. 无论想要启动的组件是Activity, Service, 还是BroadcastReceiver, 都可以使用Intent封装启动的意图. 2, 在某些时候, 应用程序只是想启动具有某种特征的组件, 并不想和某个特定的组件耦合. 使用Intent可以方便的达到这种高层次解耦的目的. Intent的Component属性 Intent对象的setComponent(ComponentName comp)方法用于设置Intent的Component属性. ComponentName包含如下几个构造器: ComponentName(String pkg, String cls) ComponentName(Context pkg, String cls) ComponentName(Context pkg, Class<?> cls) 由以上的构造器可知, 创建一个ComponentName对象需要指定包名和类名--这就可以唯一确定一个组件类, 这样应用程序即可根据给定的组件类去启动特定的组件. 例如: ComponentName comp = new

android3.0 widget

半世苍凉 提交于 2020-03-02 19:09:44
本文翻译整理自: http://developer.android.com/guide/topics/appwidgets/index.html#preview 前言 在Android3.0中,增加了大量的APP Widgets功能,在本文中将详细介绍它们。 一,设置预览图片 在Android 3.0版本中,增加了 previewImage 属性,它用于指明 App Widget的预览图片,它将在用户选中该App Widget的图标,打算添加该App Widget时,进行显示,以便用户了解该App Widget的界面。如果没提供预览图标的话,显示的将是你的App Widget的启动图标。该属性和AndroidManifest.xml中的<receiver>元素的android:previewImage的属性一致。你可以在XML定义该属性,如 示例1 示例1: <appwidget-provider xmlns:android = "http://schemas.android.com/apk/res/android" ... android:previewImage = "@drawable/preview" > </appwidget-provider> Android emulator提供了一个叫做"Widget Preview"的APK应用程序,以便创建你的App

android task and activity

烈酒焚心 提交于 2020-03-02 08:22:27
a usful blog. http://changeyouforever.iteye.com/blog/1160038 android:allowTaskReparenting 用来标记Activity能否从启动的Task移动到有着affinity的Task(当这个Task进入到前台时)——“true”,表示能移动,“false”,表示它必须呆在启动时呆在的那个Task里。 如果这个特性没有被设定,设定到<application>元素上的allowTaskReparenting特性的值会应用到Activity上。默认值为“false”。 一般来说,当Activity启动后,它就与启动它的Task关联,并且在那里耗尽它的整个生命周期。当当前的Task不再显示时,你可以使用这个特性来 强制Activity移动到有着affinity的Task中。典型用法是:把一个应用程序的Activity移到另一个应用程序的主Task中。 例如,如果e-mail中包含一个web页的链接,点击它就会启动一个Activity来显示这个页面。这个Activity是由Browser应用程序 定义的,但是,现在它作为e-mail Task的一部分。如果它重新宿主到Browser Task里,当Browser下一次进入到前台时,它就能被看见,并且,当e-mail Task再次进入前台时,就看不到它了。

Android四大组件之Service

房东的猫 提交于 2020-03-02 05:45:01
相信大多数朋友对Service这个名词都不会陌生,没错,一个老练的Android程序员如果连Service都没听说过的话,那确实也太逊了。Service作为Android四大组件之一,在每一个应用程序中都扮演着非常重要的角色。它主要用于在后台处理一些耗时的逻辑,或者去执行某些需要长期运行的任务。必要的时候我们甚至可以在程序退出的情况下,让Service在后台继续保持运行状态。 不过,虽然Service几乎被每一个Android程序员所熟知,但并不是每个人都已经将Service的各个知识点都掌握得非常透彻。那么今天我就将带着大家对Service进行一次全面、深入的探究,希望每个人在读完本篇文章后都能对Service有更深一层的理解。 Service的基本用法 关于Service最基本的用法自然就是如何启动一个Service了,启动Service的方法和启动Activity很类似,都需要借助Intent来实现,下面我们就通过一个具体的例子来看一下。 新建一个Android项目,项目名就叫ServiceTest,这里我选择使用4.0的API。 然后新建一个MyService继承自Service,并重写父类的onCreate()、onStartCommand()和onDestroy()方法,如下所示: [java] view plain copy public class

android点滴16:Unable to start service Intent 的一种可能

三世轮回 提交于 2020-03-02 02:53:29
程序报错: Unable to start service Intent 看了好多网上的贴,都说是Service没有注册,这是对的。但还有一种非常低级的错误,就是在启动Intent时误把startActivity()写成了startServie()。我想说这是一个非常低级的错误了,但是我今天就犯而且花费了一早上的时间来调试,ai~下次长点记性吧! 来源: oschina 链接: https://my.oschina.net/u/266531/blog/134533