app日記
發(fā)布時(shí)間:2017-02-15 來源: 日記大全 點(diǎn)擊:
app日記篇一:如何高效寫日記
如何高效寫日記?看這一篇就夠了 ——轉(zhuǎn)載《曹將的深夜筆記》 初一時(shí)候老師讓寫周記,還會定時(shí)把本子上交,他會做批注。 看到我的周記本時(shí),老師驚呆了:因?yàn)閮芍軙r(shí)間,我寫了 20 多篇。
晚自習(xí)的時(shí)候,為了鼓舞其他同學(xué),還讓我上講臺把那些文章讀出來,讀了整整一節(jié)課。
結(jié)束的時(shí)候,他問我:是什么動(dòng)力讓你堅(jiān)持寫下來的?
我奄奄一息地回答:習(xí)慣了。
01 為什么寫日記:因?yàn)槲冶堪。?/p>
其實(shí)從小學(xué)時(shí)候就開始寫日記了。
倒也沒受什么「成功學(xué)」的影響,原因其實(shí)蠻簡單的:因?yàn)槲冶容^笨。具體來說就是:經(jīng)常會忘了昨天、前天或者更長時(shí)間做了什么。所以為了讓自己有點(diǎn)記性,就開始寫日記。
剛開始的時(shí)候,寫得很流水賬,比如:
今天是2000年3月4日,某女同學(xué)換了個(gè)發(fā)型,好漂亮。下午掃地時(shí)候撿到了一元錢,找不到失主,就拿去買小浣熊了。還抽到了「諸葛亮」的卡,好開心。 到了中學(xué)階段,感覺不能這么漫無目地寫了,開始有了主題。比如今天聊友情,明天聊時(shí)政。日記的媒介也慢慢從紙筆過渡到「 QQ 空間」,再往后就轉(zhuǎn)移到「人人網(wǎng)」「博客」「微博」和「公眾號」上。
但有一點(diǎn)沒有改變,那就是:流水賬還是繼續(xù)保持著。
如果要給日記找些功利主義的作用,那可以衍生出以下幾點(diǎn): 第一,它確實(shí)讓我記下了一些過往。
第一次面試時(shí)的恐慌,第一次被稱贊時(shí)的激動(dòng),第一次演講時(shí)候的臉紅,留下了當(dāng)時(shí)的情緒,回顧時(shí)便多了一些身臨其境。當(dāng)然,有了記錄,也讓自己覺得每天沒有碌碌而為。
第二,它在潛移默化中讓自己養(yǎng)成了總結(jié)的習(xí)慣。
這個(gè)也好理解,畢竟有了回顧,難免會多寫幾句總結(jié)和反思,這幫助自己下一次面對類似場景時(shí),多了一些自如。
第三,它讓自己日后的文章有了足夠的素材。
這些都是自己的親身經(jīng)歷,所以當(dāng)有文章需要論據(jù)時(shí),便有了第一手的資料。因?yàn)槭亲约旱,所以更?dú)特。
第四,寫總結(jié)的時(shí)候也不怕了。
之前寫過一篇「如何寫年終總結(jié)」的文章,很多朋友留言說,還是不知道寫什么。其實(shí)如果一直堅(jiān)持日記,那基本上就不用擔(dān)心這個(gè)問題,因?yàn)槊刻熳隽耸裁炊剂巳缰刚啤?/p>
02 如何開始一段日記歷程:要簡單
從自己的經(jīng)歷上來看,要讓一件事能做到持久,有一個(gè)基本條件:那就是簡單! 不要一開始就嘗試XX日記法,太過復(fù)雜,反而讓自己一開始就陷入被動(dòng)。倒不如在最初的時(shí)候,就每天寫幾句話,比如:
今天做了三件事,第一是……第二是……第三是……
也就兩三分鐘的事。
甚至可以采用「便簽日記法」和「卡通日記法」:
1. 便簽日記法。
每天就一張便簽,可以寫上做了什么,也可以畫下當(dāng)天的經(jīng)過,不能更多,強(qiáng)制自己少寫點(diǎn)。
↑ 便簽日記
2. 卡通日記法。
把自己的經(jīng)過畫成故事,以第三人稱的視角展開下去,一段時(shí)間后,別有味道。比如自己有段時(shí)間不想寫東西,就畫了一組《便利貼男生的故事》。
↑ 便利貼男生的故事
日記不是百米沖刺,重要的是堅(jiān)持下去。
當(dāng)它慢慢成為習(xí)慣后,我們可以開始進(jìn)行延伸。
03 系統(tǒng)地寫日記:看到自己的成長
晨間日記火了一陣。
它其實(shí)就是早上寫日記的意思,方式是將日記本劃分為一系列格子,包括:工作、學(xué)習(xí)、快樂的事情、夢想、理財(cái)、關(guān)系、健康、計(jì)劃及一個(gè)基本信息欄(天氣、時(shí)間等)。
這些都很不錯(cuò),不過我個(gè)人不會這么復(fù)雜,主要問自己四個(gè)問題:
第一,今天完成了什么。其實(shí)也就是工作上做了哪些事。
第二,今天有什么新發(fā)現(xiàn)。比如發(fā)現(xiàn)了什么提高效率的 App,用到了什么特殊的工具。
第三,今天有什么特別好玩的事。比如最近每天都在幫同事拍照,或者看了電影《你的名字》。
第四,今天自己學(xué)到了什么。比如聽「得到」收獲的筆記,看文章做的摘錄,聽講座的感想。
從這四個(gè)角度入手,可以囊括自身和他人的一系列點(diǎn)點(diǎn)滴滴。
當(dāng)然,根據(jù)特定需要,也會添加一些內(nèi)容,比如:
今天認(rèn)識了什么有意思的人?
? 今天買了什么有意思的玩物?
? 今天收到了什么小禮物? ?
? ……
至于寫作時(shí)間,倒也不一定要早上。晨間日記的邏輯是,經(jīng)過一晚上的休息,早上會更冷靜,寫下的東西會更有思考性。
不過,對自己而言,早上一般還是疲于奔命的狀態(tài),要在慌張中保持冷靜,還不如多睡兩分鐘……(感覺我這種性格終究成不了大事)
04 寫日記的好幫手
4.1 筆記本(轉(zhuǎn) 載 于:www.91mayou.com 蒲 公英文 摘:app日記)
↑ 多年前的日記本
app日記篇二:安卓學(xué)習(xí)日記
2016.2.21
今天開始以類的方式來分析整個(gè)工程,之前做的太繁瑣了。沒有條理性,目的應(yīng)該是要看java和andorid的源碼,弄清楚為什么要這樣寫。
首先還是看main activity
一個(gè)imageButton
就是可以加圖片的按鈕,我們一般喜歡用按下和不按下是不同顏色的,這里我們可以通過在按下和不按下的時(shí)候用不同的圖片來做到
這里用到了xml的selector機(jī)制
如果單獨(dú)只要一個(gè)圖片的話,可以寫
setImageReource(int )
這樣也可以。
我們看到它在androdi:src=”@android:drawable/ic_menu_camera”
這里不是寫的@drawable
而是@android:drawable
這個(gè)是因?yàn)閍ndroid的sdk里面本身就有很多的圖片素材,在
D:\elipse\eclipse\sdk\platforms\android-21\data\res\drawable-hdpi
里面
實(shí)際編一下發(fā)現(xiàn)自己啥都不會了,首先就是這個(gè)manifest
看一下manifest有什么作用
manifest這個(gè)東西是一個(gè)叫做AndroidManifest.xml的文件,而且也只能叫做這個(gè)名字
這個(gè)東西必須要位于app的根目錄
1、這個(gè)manifest必須要提供這個(gè)app的包名,用這個(gè)包名來唯一確定我這個(gè)app
而且在gen這個(gè)目錄里面,就是自動(dòng)生成R的那個(gè)目錄里面,這個(gè)報(bào)名就是我這個(gè)app的包名
所以manifest最基本的寫法就是
<manifest
xmlns:android=
package=”com.maowei.test”
>
</manifest>
2、manifest要描述一些這個(gè)app所需要具備的條件:比如sdk版本信息、app所需要具備的權(quán)限等等。
<uses-sdk
android:minSdkVersion=“16”
android:targetSdkVersion=”21”/>
<manifest>和<appalication>是有且僅有一次的。
如果要定義一個(gè)<activity>,<service>,<BroadcastReceiver>,<ContentProvider>那么需要指明name屬性,這個(gè)name需要和對應(yīng)的包名的完整路徑一致
但是這里有這樣一個(gè)情況,比如我的manifest里面聲明了
<manifest package=”com.maowei.test”…>
<appalication…>
<activity android:name=”com.maowei.test.SecretService”…>
</activity>
</appalication>
</manifest>
因?yàn)槲疫@里activity前面的部分對應(yīng)的和manifest的package是一樣的,我就可以簡寫成 <manifest package=”com.maowei.test”…>
<appalication…>
<activity android:name=”.SecretService”…>
</activity>
</appalication>
</manifest>
注意前面是有一個(gè)”.”的
本來我以為寫了manifest,appalication,activity就好了,但是實(shí)際過程中發(fā)現(xiàn)了一個(gè)問題,就是這個(gè)程序安裝了,卻沒有圖標(biāo),也不能正常啟動(dòng)。導(dǎo)致你在android的桌面上根本找不到這個(gè)app
后來加了一個(gè)<intent-filter>就好了,
這樣寫的
所以很有必要看一下intent-filter的內(nèi)容
首先就要說一下intent這個(gè)類,這個(gè)是用來描述一系列操作信息的一個(gè)類。
這個(gè)問題解決了為什么我們的activity之間是可以相互跳轉(zhuǎn)的。
比如我們要從一個(gè)activity跳轉(zhuǎn)到另一個(gè)activity,一般我們會有一個(gè)觸發(fā)事件,比如一個(gè)button被按下了,那么為什么按下了就會跳到另一個(gè)activity呢,因?yàn)槲覀冊赽utton的onClickListener里面new了一個(gè)intent,這個(gè)intent會跳到我們指定的activity
這個(gè)就是顯式intent的作用,直接說明,從哪個(gè)activity跳到哪個(gè)activity(intent不止可以完成activity到activity之間的跳轉(zhuǎn),還可以啟動(dòng)Service、還有Broadcast等等) 這里以activity為例子
比如我要從activity1跳轉(zhuǎn)到activity2
那么我就在activity1里面這樣寫:
Intent intent1 = new Intent(this,activity2.class);
startActivity(intent);
這里用了intent的這個(gè)構(gòu)造函數(shù),用于從一個(gè)context跳到另一個(gè)類里面。
這里還用了startActivity(intent)這個(gè)函數(shù),這個(gè)是在Activity類里面的一個(gè)函數(shù)。
當(dāng)然intent里面還有對應(yīng)的方法可以設(shè)置需要在哪兩個(gè)組件之間跳轉(zhuǎn)
比如setComponent 1. ComponentName componentName = new ComponentName(this, SecondActivity.class);
2. // 或者
ComponentName componentName = new ComponentName(this, "com.example.app016.SecondActivity");
3. // 或者
ComponentName componentName = new ComponentName(this.getPackageName(), "com.example.app016.SecondActivity");
4.
5. Intent intent = new Intent();
6. intent.setComponent(componentName);
7. startActivity(intent);
還有直接設(shè)置類的
setClass
Intent intent1 = new Intent();
intent1.setClass(this,activity2.class);
startActivity(intent1);
這種直接跳轉(zhuǎn)的方式就適合于那種我在一個(gè)應(yīng)用程序的內(nèi)部自己跳轉(zhuǎn)。
但是思考這樣一個(gè)問題,如果我一個(gè)應(yīng)用程序需要用到打電話這個(gè)功能,也就是說我需要從當(dāng)前的activity跳轉(zhuǎn)到系統(tǒng)的打電話的功能上面去的話,那么怎樣才可以呢?
又或者是不是打電話,而是一個(gè)分享的功能,我要分享到QQ、微博,但是我現(xiàn)在又不知道你手機(jī)上有沒有QQ,微博,那我怎么才能實(shí)現(xiàn)這個(gè)功能呢。
這里涉及到了android的一個(gè)輪詢機(jī)制,就是我在編這個(gè)app的時(shí)候就說明,我哪個(gè)activity是有怎樣的功能的,然后我在用其他的應(yīng)用程序如果需要這樣的功能,那么我就在我整個(gè)安裝的應(yīng)用程序里面找,那個(gè)app的哪個(gè)activity能夠滿足這樣的功能,那么我就可以控制直接跳轉(zhuǎn)到這個(gè)activity里面,從而完成了應(yīng)用程序之間的交互。
這里我們就發(fā)現(xiàn)了manifest這個(gè)東西,相當(dāng)于是定下了我這個(gè)app的一個(gè)特性,如果有什么用得到這個(gè)app的特點(diǎn)的話,我就可以通過輪詢?nèi)缓缶湍苓M(jìn)入這個(gè)app,下面看例子
如果來在manifest里面說明我這個(gè)app的特點(diǎn)呢?
用<intent-filter>
比如我在manifest里面寫了
<manifest xmlns:android=https://schemas.android.com/apk/res/android
package=”com.maowei.test”>
<application
android:icon=”@drawable/ic_launcher”>
<activity
android:name=”com.maowei.Test”
android:label = “@string/app_name”>
<intent-filter>
<action android:name=”android.intent.action.MAIN”/>
<category android:name=”android.intent.category.LAUNCHER”/>
</intent-filter>
</activity>
</application>
</manifest>
必須要有這個(gè)intent-filter
這樣我的這個(gè)app才能識別我進(jìn)入這個(gè)app的時(shí)候哪個(gè)是main,一開始進(jìn)入哪個(gè)activity
比如我聲明我的這個(gè)app有撥號功能
<activity
android:name=”com.maowei.Test”>
<intent-filter>
<action android:name=”android.intent.action.DIAL”>
<category android:name=”android.intent.category.DEFAULT”/>
</activity>
這樣,當(dāng)我另一個(gè)activity寫了個(gè)這個(gè)
Intent intent1 = new Intent(“android.intent.action.DIAL”);
startActivity(intent1);
這時(shí)候就會跳出一個(gè)提示框去讓你選擇所有intent_filter里面有這個(gè)撥號功能的程序
當(dāng)然,我們也可以自定義我們這個(gè)action的名字
比如 1. Intent intent = new Intent();
2. intent.setAction("abcdefg");
3. startActivity(intent);
但是這樣有個(gè)壞處,不便于管理,而且不同的app之間可能會有重復(fù)
app日記篇三:Android成長日記-APP的簽名和打包
Android成長日記-APP的簽名和打包
簽名的意義:
1. 為了保證每個(gè)應(yīng)用程序開發(fā)者的合法
2. 防止部分人通過使用相同的Package Name來混淆替換已經(jīng)安裝的程序,從而出現(xiàn)一些惡意篡改
3. 保證我們每次發(fā)布的版本的一致性
(如自動(dòng)更新不會因?yàn)榘姹静灰恢露鵁o法安裝)
--
方式:
(在Next的操作中就會有為程序添加簽名的操作)
Ps:簽名結(jié)束后會生成一個(gè)簽名文件以及apk,在下次對程序進(jìn)行升級的時(shí)候使用這個(gè)簽名文件即可
相關(guān)熱詞搜索:日記 app appcrash 社交app
熱點(diǎn)文章閱讀