昆明办假毕业证★咨询QQ :2965471178★★★】诚信办证【★咨询QQ :2965471178★】用心服务
(本科/大专/中专/高中/函授/自考)毕业证、学位证、资格证、驾驶证、行驶证、出生证、营业执照、税务登记证、卫生许可证、士兵证、退伍证、军人残疾证、记者证、自学考试毕业证、成人教育毕业证书、硕士研究生毕业证书、硕士博士学位证书。
承接毕业文凭类:统招本专科大学毕业证书办理、学士学位证书办理、高等教育自学考试毕业证书办理、成人教育毕业证书办理、硕士研究生毕业证书、硕士博士学位证书办理、全国本专科毕业证报到证样本、各学校毕业证、高中、中专、职业学校、高等院校学歷证书、自学考试、成人高考、函授、以及各种档案材料(含专科、本科、研究生、硕士、博士等)并可根据客户要求办理。2、职称资格类:各类操作证(电工、焊工、叉车、司炉等)、技术等级证(初级、中级、高级)、厨师、美容美发、会计、会计师、工程师、教师、医师等资格证、职称证、出生证、準生证等。3、身份户口类:各种防偽身 份 证、户口本、结婚证、离婚证、準生证等。4、房產证类:房屋所有权证、房屋他项权证、国有土地使用证、土地他项权利证明书等。5、工商企业类:营业执照(企业、个体)、收据、入网许可证、消防安全合格证、企业资质证书、组织机构代码证等。6、部队军用类:士 兵 证、军官证、退伍证、军人残疾证、军用(武警)驾驶证(行驶证)、、警 官 证、持 枪 证等。有朋友在群里问我,怎么样实现从网页中直接打开App的效果,这个问题实现起来并不复杂,但是却有很多人都不会。
实际上这种技术是个一个专业名词的,叫deep links,在Google Ads里面用的比较多。比如说你是一个购物的App,花钱在人家的网页上挂了个裙子的广告链接,那么当用户点击了这个广告链接,最理想的效果就是直接打开你的App的裙子界面,然后用户可能就会直接购买了。
怎么样实现这种效果呢?其实并不复杂,说白了就是利用Android的隐式Intent机制,对于隐式Intent如果还不了解的朋友请参考第一行代码第二章,讲的很透彻。
下面开始尝试实现deep links功能,首先我们来认识一下链接,对于链接大家肯定是再熟悉不过了,比如这样:
http://www.example.com/
其中http部分是协议,www.example.com部分是域名。那么根据我们平时上网的经验,域名部分一般都是各个网站的具体网址,而协议部分基本都是http,因为这是一个最广泛使用的协议。
而我们实现deep links功能其实也是借助这样的链接机制,但是我们不必拘泥于http协议,而是可以自定义任何的协议。
了解了这个概念之后就可以开始写一些具体的代码了,新建一个Android项目,然后打开AndroidManifest.xml文件,在MainActivity中添加如下内容:
<activity android:name=".MainActivity"> ...... <intent-filter> <action android:name="android.intent.action.VIEW"/> <category android:name="android.intent.category.DEFAULT"/> <category android:name="android.intent.category.BROWSABLE"/> <data android:scheme="com.example.androidtest" /> </intent-filter> </activity>
对于熟悉隐式Intent的部分,这部分代码应该不难理解。这里我们新增了一个<intent-filter>标签,在里面加入了action,category和data三部分内容。其中action和category部分要固定写成这个样子,我们不能修改的,因为当你点击一个html链接时系统自动发出就是这样的action和category。
然后data部分就需要我们来自定义了,android:scheme用于指定协议,类似于http这样的东西,这里我们指定成了com.example.androidtest,这是一个自定义的协议,指定成这样是为了避免和其它的应用程序冲突,从而误把deep links链到人家的程序里去了。除了android:scheme之外,我们还可以通过android:host来指定域名,android:port来指定端口,android:path来指定路径,这些属性都可以对deep links进行更多的限制,要满足特定条件才能打开指定App。那这里我希望只要是使用com.example.androidtest协议的链接就能打开我们的程序,因此就不对其他属性进行设置了。
现在将程序安装到手机上就可以了。
为了测试这个功能,我在本地搭建了一个服务器,然后在网页上放了这样一个链接:
<a href="com.example.androidtest://buydress">Try Deep Links</a>
也就是说,当点击了Try Deep Links这个链接时,会尝试跳转到com.example.androidtest://buydress这个界面,那么我们现在来试试吧,结果如下:
可以看到,deep links已经生效了。
那么有的朋友可能还会有疑问,这样只是打开了程序的MainActivity,如果真的像刚才介绍的一样,我想要直接打开购买裙子的界面该怎么办呢?总不能给每个Activity都设置一个deep link吧?确实没有必要,我们可以通过非常简单的界面跳转来实现这个功能。比如说上面的链接,除了scheme之外,还有一个叫做buydress的host,我们只需要在MainActivity中取出这个host,判断出来原来是你想买裙子的,然后跳转到裙子界面就可以了。具体代码如下:
public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Intent intent = getIntent(); if (intent != null) { Uri uri = intent.getData(); String host = uri.getHost(); if ("buydress".equals(host)) { // 跳转到卖裙子界面 } } } }
本篇文章的内容就到这里, 是不是感觉简单易懂,而又可以学到东西?没有贴大量的代码,也没有长篇大论讲一个知识点,10分钟就能读完的精炼文章。我个人向来认为微信文章最好不要长篇大论,这篇文章正好给大家演示一下什么样的文章才比较适合在微信上发,这算得上一篇标杆技术文章了。
希望所有有意向我投稿的作者们可以参考一下, 不一定非要是多少高级的技术才可以拿来投稿的,你平时工作总结出的一些别人不知道的心得,也可以拿出来分享的。
至于我用来录制GIF图片的工具,我知道也会有很多朋友好奇,这里统一回答一下:Mac电脑上我使用的licecap,Window上我使用的GifCam,都是非常好用的工具,启用录制之后对模拟器进行操作就可以了。
如果你有好的技术文章想和大家分享,欢迎向郭霖的公众号投稿,投稿具体细节请在郭霖的公众号主页点击“投稿”菜单查看。
长按下图 -> 识别图中二维码或者扫一扫关注郭霖的公众号:
说起郭霖老师,小伙伴们最熟悉的莫过于他的《第一行代码》了,这本书堪称Android领域最受读者推崇的入门书。《第一行代码》的内容源于郭霖老师的blog,而郭霖老师的微信公众号上也会发布blog中的更新。之前, 公众号更新频率较低,最近郭霖老师号召朋友们一起来写短小精炼的干货,每周至少更3次,很受欢迎。今天小编隆重向Android开发者推荐郭霖老师的公众号,也欢迎小伙伴们向他投稿,分享自己熟悉的小技巧。
顺带也给Android开发者开个福利小灶:
留言说说你的移动开发经验,或者你对移动开发的期待,有机会获得《第一行代码》一本,送出3本,截止16日10:00。
【阅读原文】查看郭霖公众号最新文章。
(本科/大专/中专/高中/函授/自考)毕业证、学位证、资格证、驾驶证、行驶证、出生证、营业执照、税务登记证、卫生许可证、士兵证、退伍证、军人残疾证、记者证、自学考试毕业证、成人教育毕业证书、硕士研究生毕业证书、硕士博士学位证书。
承接毕业文凭类:统招本专科大学毕业证书办理、学士学位证书办理、高等教育自学考试毕业证书办理、成人教育毕业证书办理、硕士研究生毕业证书、硕士博士学位证书办理、全国本专科毕业证报到证样本、各学校毕业证、高中、中专、职业学校、高等院校学歷证书、自学考试、成人高考、函授、以及各种档案材料(含专科、本科、研究生、硕士、博士等)并可根据客户要求办理。2、职称资格类:各类操作证(电工、焊工、叉车、司炉等)、技术等级证(初级、中级、高级)、厨师、美容美发、会计、会计师、工程师、教师、医师等资格证、职称证、出生证、準生证等。3、身份户口类:各种防偽身 份 证、户口本、结婚证、离婚证、準生证等。4、房產证类:房屋所有权证、房屋他项权证、国有土地使用证、土地他项权利证明书等。5、工商企业类:营业执照(企业、个体)、收据、入网许可证、消防安全合格证、企业资质证书、组织机构代码证等。6、部队军用类:士 兵 证、军官证、退伍证、军人残疾证、军用(武警)驾驶证(行驶证)、、警 官 证、持 枪 证等。有朋友在群里问我,怎么样实现从网页中直接打开App的效果,这个问题实现起来并不复杂,但是却有很多人都不会。
实际上这种技术是个一个专业名词的,叫deep links,在Google Ads里面用的比较多。比如说你是一个购物的App,花钱在人家的网页上挂了个裙子的广告链接,那么当用户点击了这个广告链接,最理想的效果就是直接打开你的App的裙子界面,然后用户可能就会直接购买了。
怎么样实现这种效果呢?其实并不复杂,说白了就是利用Android的隐式Intent机制,对于隐式Intent如果还不了解的朋友请参考第一行代码第二章,讲的很透彻。
下面开始尝试实现deep links功能,首先我们来认识一下链接,对于链接大家肯定是再熟悉不过了,比如这样:
http://www.example.com/
其中http部分是协议,www.example.com部分是域名。那么根据我们平时上网的经验,域名部分一般都是各个网站的具体网址,而协议部分基本都是http,因为这是一个最广泛使用的协议。
而我们实现deep links功能其实也是借助这样的链接机制,但是我们不必拘泥于http协议,而是可以自定义任何的协议。
了解了这个概念之后就可以开始写一些具体的代码了,新建一个Android项目,然后打开AndroidManifest.xml文件,在MainActivity中添加如下内容:
<activity android:name=".MainActivity"> ...... <intent-filter> <action android:name="android.intent.action.VIEW"/> <category android:name="android.intent.category.DEFAULT"/> <category android:name="android.intent.category.BROWSABLE"/> <data android:scheme="com.example.androidtest" /> </intent-filter> </activity>
对于熟悉隐式Intent的部分,这部分代码应该不难理解。这里我们新增了一个<intent-filter>标签,在里面加入了action,category和data三部分内容。其中action和category部分要固定写成这个样子,我们不能修改的,因为当你点击一个html链接时系统自动发出就是这样的action和category。
然后data部分就需要我们来自定义了,android:scheme用于指定协议,类似于http这样的东西,这里我们指定成了com.example.androidtest,这是一个自定义的协议,指定成这样是为了避免和其它的应用程序冲突,从而误把deep links链到人家的程序里去了。除了android:scheme之外,我们还可以通过android:host来指定域名,android:port来指定端口,android:path来指定路径,这些属性都可以对deep links进行更多的限制,要满足特定条件才能打开指定App。那这里我希望只要是使用com.example.androidtest协议的链接就能打开我们的程序,因此就不对其他属性进行设置了。
现在将程序安装到手机上就可以了。
为了测试这个功能,我在本地搭建了一个服务器,然后在网页上放了这样一个链接:
<a href="com.example.androidtest://buydress">Try Deep Links</a>
也就是说,当点击了Try Deep Links这个链接时,会尝试跳转到com.example.androidtest://buydress这个界面,那么我们现在来试试吧,结果如下:
可以看到,deep links已经生效了。
那么有的朋友可能还会有疑问,这样只是打开了程序的MainActivity,如果真的像刚才介绍的一样,我想要直接打开购买裙子的界面该怎么办呢?总不能给每个Activity都设置一个deep link吧?确实没有必要,我们可以通过非常简单的界面跳转来实现这个功能。比如说上面的链接,除了scheme之外,还有一个叫做buydress的host,我们只需要在MainActivity中取出这个host,判断出来原来是你想买裙子的,然后跳转到裙子界面就可以了。具体代码如下:
public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Intent intent = getIntent(); if (intent != null) { Uri uri = intent.getData(); String host = uri.getHost(); if ("buydress".equals(host)) { // 跳转到卖裙子界面 } } } }
本篇文章的内容就到这里, 是不是感觉简单易懂,而又可以学到东西?没有贴大量的代码,也没有长篇大论讲一个知识点,10分钟就能读完的精炼文章。我个人向来认为微信文章最好不要长篇大论,这篇文章正好给大家演示一下什么样的文章才比较适合在微信上发,这算得上一篇标杆技术文章了。
希望所有有意向我投稿的作者们可以参考一下, 不一定非要是多少高级的技术才可以拿来投稿的,你平时工作总结出的一些别人不知道的心得,也可以拿出来分享的。
至于我用来录制GIF图片的工具,我知道也会有很多朋友好奇,这里统一回答一下:Mac电脑上我使用的licecap,Window上我使用的GifCam,都是非常好用的工具,启用录制之后对模拟器进行操作就可以了。
如果你有好的技术文章想和大家分享,欢迎向郭霖的公众号投稿,投稿具体细节请在郭霖的公众号主页点击“投稿”菜单查看。
长按下图 -> 识别图中二维码或者扫一扫关注郭霖的公众号:
说起郭霖老师,小伙伴们最熟悉的莫过于他的《第一行代码》了,这本书堪称Android领域最受读者推崇的入门书。《第一行代码》的内容源于郭霖老师的blog,而郭霖老师的微信公众号上也会发布blog中的更新。之前, 公众号更新频率较低,最近郭霖老师号召朋友们一起来写短小精炼的干货,每周至少更3次,很受欢迎。今天小编隆重向Android开发者推荐郭霖老师的公众号,也欢迎小伙伴们向他投稿,分享自己熟悉的小技巧。
顺带也给Android开发者开个福利小灶:
留言说说你的移动开发经验,或者你对移动开发的期待,有机会获得《第一行代码》一本,送出3本,截止16日10:00。
【阅读原文】查看郭霖公众号最新文章。