安卓小程序開發(fā)代碼(軟件小程序源碼開發(fā))
本篇文章給大家談?wù)劙沧啃〕绦蜷_發(fā)代碼,以及軟件小程序源碼開發(fā)對應(yīng)的知識點,希望對各位有所幫助,不要忘了收藏本站喔。
小程序開發(fā)怎么做?
微信版本升級后,打開微信,點擊底部的“發(fā)現(xiàn)”這個菜單項,就會發(fā)現(xiàn)升級后的“發(fā)現(xiàn)”菜單里,增加了“小程序”這樣一個功能。
2.點擊打開小程序后,可以看到有附近的小程序和我的小程序,附近的小程序是所在定位周邊的小程序。
下面的小程序列表可以看到的是我們之前打開過的一些小程序,如果有自己覺得很好用的小程序就可以點擊左上角,添加到我的小程序里面。
3.微信小程序還有具有搜索功能,打開搜索頁面可以輸入想要找的小程序。
用Android studio做一個可以運行的小程序,鬧鐘也行,然后可以連到手機,感謝大神。
環(huán)境搭建就不講了,直接說開發(fā)。
小鬧鐘程序開發(fā)中的要點就是:
1、時間選擇對話框(TimePicker)
2、獲取鬧鐘管理器并對其進行設(shè)置
3、注冊廣播接收器
掌握了這兩點,寫程序就很簡單了。
1、新建android項目:Alarm,sdk版本選擇2.2,Package name:com.lql.activity,Main Activity:Alarm
2、編寫界面:直接修改layout中的main.xml文件,代碼如下:
Xml代碼
?xml?version="1.0"?encoding="utf-8"?
LinearLayout?xmlns:android=""
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center_vertical"
Button
android:id="@+id/timeBtn"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/time"
android:textSize="20sp"
/
Button
android:id="@+id/cancelAlarmBtn"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/cancelAlarm"
/
/LinearLayout
界面的效果如下:
3、修改Alarm.java這個activity,在該Activity中需要做這樣幾件事:
獲取界面上的兩個按鈕組件,并給其綁定事件監(jiān)聽器
第一個時間按鈕,點擊后,顯示時間選擇對話框(TimePicker),供選擇小時和分鐘,并設(shè)置鬧鐘
第二個按鈕,點擊之后需要當(dāng)前設(shè)定的鬧鐘
比較難寫的代碼就是鬧鐘設(shè)置:
//設(shè)置時間
Java代碼??
timeBtn.setOnClickListener(new?Button.OnClickListener(){
@Override
public?void?onClick(View?arg0)?{
Log.d(TAG,?"click?the?time?button?to?set?time");
calendar.setTimeInMillis(System.currentTimeMillis());
new?TimePickerDialog(Alarm.this,new?TimePickerDialog.OnTimeSetListener()?{
@Override
public?void?onTimeSet(TimePicker?arg0,?int?h,?int?m)?{
//更新按鈕上的時間
timeBtn.setText(formatTime(h,m));
//設(shè)置日歷的時間,主要是讓日歷的年月日和當(dāng)前同步
calendar.setTimeInMillis(System.currentTimeMillis());
//設(shè)置日歷的小時和分鐘
calendar.set(Calendar.HOUR_OF_DAY,?h);
calendar.set(Calendar.MINUTE,?m);
//將秒和毫秒設(shè)置為0
calendar.set(Calendar.SECOND,?0);
calendar.set(Calendar.MILLISECOND,?0);
//建立Intent和PendingIntent來調(diào)用鬧鐘管理器
Intent?intent?=?new?Intent(Alarm.this,AlarmReceiver.class);
PendingIntent?pendingIntent?=?PendingIntent.getBroadcast(Alarm.this,?0,?intent,?0);
//獲取鬧鐘管理器
AlarmManager?alarmManager?=?(AlarmManager)getSystemService(ALARM_SERVICE);
//設(shè)置鬧鐘
alarmManager.set(AlarmManager.RTC_WAKEUP,?calendar.getTimeInMillis(),?pendingIntent);
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP,?calendar.getTimeInMillis(),?10*1000,?pendingIntent);
Toast.makeText(Alarm.this,?"設(shè)置鬧鐘的時間為:"+String.valueOf(h)+":"+String.valueOf(m),?Toast.LENGTH_SHORT).show();
Log.d(TAG,?"set?the?time?to?"+formatTime(h,m));
}
},calendar.get(Calendar.HOUR_OF_DAY),calendar.get(Calendar.MINUTE),true).show();
}
});
代碼里面有注釋,這里就不多解釋了,其中new TimePickerDialog為創(chuàng)建時間選擇對話框。為了能夠看到效果,我給鬧鐘添加了重復(fù)提醒:alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), 10*1000, pendingIntent);。
還要為取消鬧鐘按鈕添加事件監(jiān)聽器:
Java代碼??
//取消鬧鐘按鈕事件監(jiān)聽
final?Button?cancelAlarmBtn?=?(Button)findViewById(R.id.cancelAlarmBtn);
cancelAlarmBtn.setOnClickListener(new?Button.OnClickListener(){
@Override
public?void?onClick(View?arg0)?{
Intent?intent?=?new?Intent(Alarm.this,AlarmReceiver.class);
PendingIntent?pendingIntent?=?PendingIntent.getBroadcast(Alarm.this,?0,?intent,?0);
//獲取鬧鐘管理器
AlarmManager?alarmManager?=?(AlarmManager)getSystemService(ALARM_SERVICE);
alarmManager.cancel(pendingIntent);
Toast.makeText(Alarm.this,?"鬧鐘已經(jīng)取消!",?Toast.LENGTH_SHORT).show();
}
});
在點擊取消鬧鐘按鈕時,取消之前設(shè)置的鬧鐘,核心代碼就4行。
4、編寫廣播接收器,用來接收鬧鐘的廣播事件,然后進行相關(guān)處理,
Java代碼??
public?class?AlarmReceiver?extends?BroadcastReceiver?{
/*?(non-Javadoc)
*?@see?android.content.BroadcastReceiver#onReceive(android.content.Context,?android.content.Intent)
*/
@Override
public?void?onReceive(Context?arg0,?Intent?data)?{
Log.d(Alarm.TAG,?"the?time?is?up,start?the?alarm...");
Toast.makeText(arg0,?"鬧鐘時間到了!",?Toast.LENGTH_SHORT).show();
}
}
這個代碼就很簡單了,主要是要繼 承?BroadcastReceiver 這個類,然后重寫onRecive方法。onRecive方法在鬧鐘的時間達到之后會執(zhí)行,在這里我們可以做自己的事情,比如啟動某個程序,或者播放鈴聲,我這里就是簡單的提示一下,使用的是Toast。
5、在android的AndroidManifest.xml文件中注冊廣播接收器:
manifest xmlns:android=""
Xml代碼
package="com.ql.activity"
android:versionCode="1"
android:versionName="1.0"
application?android:icon="@drawable/icon"?android:label="@string/app_name"
receiver?android:name=".AlarmReceiver"?android:process=":remote"?/
activity?android:name=".Alarm"
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
uses-sdk?android:minSdkVersion="8"?/
/manifest
核心的配置為receiver android:name=".AlarmReceiver" android:process=":remote" /,這也是鬧鐘程序的關(guān)鍵,如果不做這個配置,那么時間到了之后,鬧鐘將不會提示。
接下來就是到模擬器上測試,運行截圖如上圖。程序源代碼見附件。
小白如何自學(xué)做小程序開發(fā)?
學(xué)習(xí)任何一門語言都要堅持,做小程序語言JS開發(fā),肯定要先學(xué)會基本的前端只是HTML和CSS這兩個比較簡單,然后就是學(xué)習(xí)JavaScript。學(xué)會這個JS就可以學(xué)習(xí)一個框架例如VUE。
學(xué)完前端還要學(xué)習(xí)后端語言例如PHP,這個相對于其他后端語言比較簡單,只是學(xué)起來簡單,其實也很難,學(xué)會這個語言就可以學(xué)習(xí)一個框架例如ThinkPHP或者Laravel。
到這里就可以參考視頻開發(fā)小程序,小程序一般是前后端分類,后端寫個API前端調(diào)用就行。
這些知識學(xué)好了,也可以開發(fā)別的APP應(yīng)用和網(wǎng)站,可以學(xué)習(xí)一下uni-app這個是基于VUE開發(fā)的前端框架,一套代碼可以生成IOS應(yīng)用,安卓應(yīng)用,各種百度頭條抖音微信QQ小程序。
祝您學(xué)習(xí)快樂,一點要堅持!
急求一個android studio小程序源代碼,最好是紀(jì)念日app那樣的,只有最簡單功能就行
主界面
這次我的測評希望可以盡可能地避免出現(xiàn)對于設(shè)計美感的主觀討論,為了達到這個目標(biāo),我特意用 Keynote 制作了三個應(yīng)用主界面的「原型圖」。
通過我做的「原型圖」可以看出,三個應(yīng)用都采用了頂部導(dǎo)航的設(shè)計,而其中共有的一個按鈕是「添加新項目」這個使用頻次最高的功能。其次,「最美時光」和「Daybox」都將「設(shè)置」按鈕放在了頂部,而「Days Matter」則是將這個按鈕放在了接下來我們會談到的底部導(dǎo)航欄中。除此之外,「最美時光」在頂部設(shè)置了一個「更多」按鈕,用來展示最美系列的其他應(yīng)用,「Days Matter」在頂部設(shè)置了一個「分類查看」按鈕,可以呼出左邊側(cè)邊欄,用來分類查看不同的倒數(shù)日、紀(jì)念日。
「最美時光」與「Daybox」僅僅有一個頂部導(dǎo)航,而「Days Matter」則非常復(fù)古地添加了一個底部導(dǎo)航欄,這在最近類似的輕應(yīng)用中是很少見的。具體的功能我們放到后面去分析,至少雙導(dǎo)航欄的設(shè)計占據(jù)了本屬于倒數(shù)日列表的空間是毋庸置疑的,而且過多的元素排布會分散用戶的注意力。
接下來讓我們把目光轉(zhuǎn)向主界面最重要的元素——紀(jì)念日展示,雖然都是列表的展示,但是仔細(xì)觀察還是能發(fā)現(xiàn)其中的差別的?!窪ays Matter」與「Daybox」都是采用「一主多次」的排列方案:即給最重要的倒數(shù)日最大的展示空間,其他的倒數(shù)日則用窄列表排列;而「最美時光」則是采用「一視同仁」的排列方案。這兩種方法各有利弊,一句話來說就是在「視線聚焦」與「更多的展示空間」之間做抉擇,至于確定哪種方案更好,我的計劃是是要調(diào)查用戶到底需要記多少個倒數(shù)日以及倒數(shù)日之間到底有沒有輕重之分,這個在后面我會設(shè)計一個實驗來證明。
最后我們要關(guān)注的是一個細(xì)節(jié),即如何區(qū)分「倒數(shù)」與「正數(shù)」。簡單解釋一下,在應(yīng)用中我們一般要記兩種日子,一種是倒數(shù),比如「距離 X 的生日還有 XX 天」;另一種是正數(shù),比如「距離我們第一次吃飯已經(jīng)有 XX 天了」。在應(yīng)用中如何區(qū)分這兩種計數(shù)方式是我關(guān)心的一個點,因為這體現(xiàn)了這款應(yīng)用是否夠嚴(yán)謹(jǐn)。先讓我們看「Days Matter」,用「已經(jīng)」、「還有」兩個中文詞匯就輕松區(qū)分開了兩種計數(shù)方式,從這點可以明顯地看出應(yīng)用的優(yōu)勢;「最美時光」的方式也很巧妙,用[+]來表示「正數(shù)」,沒有符號則代表「倒數(shù)」,雖然會有一定的學(xué)習(xí)成本,仍可以算是一個「簡約」的方案。表現(xiàn)最差的是「Daybox」,完全沒有在這上面下功夫,單單從界面上根本無法區(qū)分「正數(shù)」與「倒數(shù)」,可以說是一個敗筆哦。
安卓小程序開發(fā)代碼的介紹就聊到這里吧,感謝你花時間閱讀本站內(nèi)容,更多關(guān)于軟件小程序源碼開發(fā)、安卓小程序開發(fā)代碼的信息別忘了在本站進行查找喔。