Tuesday, August 29, 2017
[Android applocation] Wallpaper
- Download many wallpaper full HD:
- include :
+ Sony
+ Samsung
+ iPhone
+ HTC
+ etc...
get notification when have new wallpaper
Enjoy this application
Download app from Google Play
Sunday, August 20, 2017
Android build apk file with command line
Google Play
build apk
- gradlew assembleDebug
build apk when running device
for debug
- gradlew installDebug
for release
- gradlew installRelease
buildTypes {
release {
minifyEnabled false
signingConfig signingConfigs.release
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
buildConfigField "boolean", "ENABLE_DEBUG", "false"
}
debug {
buildConfigField "boolean", "ENABLE_DEBUG", "true"
}
}
Friday, August 18, 2017
[Android application] Kết quả xổ số
Kết quả xổ số:
- Các tỉnh miền trung : Bình Định, Phú Yên,.....
- Các tỉnh miền nam: Sóc Trăng, TP HCM,...
- Vietlott:
+ Mega 6/45
+ Max 4D
+ Power 6/55
- Ứng dụng nhẹ, mượt
Download app from Google Play
- Các tỉnh miền trung : Bình Định, Phú Yên,.....
- Các tỉnh miền nam: Sóc Trăng, TP HCM,...
- Vietlott:
+ Mega 6/45
+ Max 4D
+ Power 6/55
- Ứng dụng nhẹ, mượt
Download app from Google Play
Tuesday, August 15, 2017
[Android Application]Works Manager
- Simple application to manager works for day
- Notification when set time
- Use for Offline
- Share event
- All in one screen
- Enjoy this application
Download app from Google Play
Monday, July 24, 2017
[Android application] Count Day
Tuesday, June 27, 2017
[Android] Retrofit library
compile 'com.google.code.gson:gson:2.6.2'
compile 'com.squareup.retrofit2:retrofit:2.0.2'
compile 'com.squareup.retrofit2:converter-gson:2.0.2'
public class ApiClient { public static final String BASE_URL = "your URL"; private static Retrofit retrofit = null; public static Retrofit getClient() { if (retrofit == null) { retrofit = new Retrofit.Builder() .baseUrl(BASE_URL) .addConverterFactory(GsonConverterFactory.create()) .build(); } return retrofit; } }public interface ApiInterface { @GET("Retrofit.php") Call<List<Message>> getInbox(); }public class Message { public int id; public String msg; public String url; public Message(int id, String msg, String url) { this.id = id; this.msg = msg; this.url = url; } }public class MainActivity extends AppCompatActivity { String TAG = "MainActivity"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ApiInterface apiService = ApiClient.getClient().create(ApiInterface.class); Call<List<Message>> call = apiService.getInbox(); call.enqueue(new Callback<List<Message>>() { @Overridepublic void onResponse(Call<List<Message>> call, Response<List<Message>> response) { // TODO - avoid loopingList<Message> messageList = response.body(); for (Message message : messageList) { Log.d(TAG, new Gson().toJson(message)); } } @Overridepublic void onFailure(Call<List<Message>> call, Throwable t) { Toast.makeText(getApplicationContext(), "Unable to fetch json: " + t.getMessage(), Toast.LENGTH_LONG).show(); } }); } }} }
Tuesday, June 20, 2017
[Android application] QR & Barcode Scanner
Tuesday, June 13, 2017
[Android Game]Shoot Asteroids
- Easy game move player with sensor to shoot Asteroids
- Require: device support GRAVITY SENSOR, ROTATION VECTOR SENSOR
- Enjoy this game
Download app from Google Play
Friday, June 9, 2017
[Android application] Object with Kotlin android
class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main)
var user = User("Kotlin", "Kotlin@yahoo.com")
var msg: String = "name:" + user.name + "\n" + user.email
var tv = findViewById(R.id.tv) as TextView
tv.text = msg } inner class User(var name: String, var email: String) }
[Android application] Compare code between Kotlin and Java
class MainActivity : AppCompatActivity() { // kotlin code
var a: Int = 10
var b: Int = 5
override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main)
var btn_hello = findViewById(R.id.btn_hello) as Button
var c = a + b
var msg: String = "Kotlin"
btn_hello.setOnClickListener {
view ->
Toast.makeText(applicationContext, msg, Toast.LENGTH_SHORT).show()
}
}
}
[Android] Install Kotlin language for Android Studio
class MainActivity : AppCompatActivity() { private var TAG: String = "MainActivity"
private var a: Int = 0
private var b: Int = 0
override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState)
a = 10
b = 25
Log.d(TAG, "result:" + (a + b))
// result:35
}
}
Monday, June 5, 2017
[Android Application] Money Manager
- easy manager your money with calendar
- simple add event
- statistic money pay for day
- statistic money pay for month
- share event
- use for offline
- all in one screen
- enjoy this application
MoneyManager
Download app from Google Play
- simple add event
- statistic money pay for day
- statistic money pay for month
- share event
- use for offline
- all in one screen
- enjoy this application
MoneyManager
Download app from Google Play
Friday, March 17, 2017
[Android application] LockScreen
simple widget lockscreen
Download app from Google Play
Download app from Google Play
Tuesday, March 14, 2017
Bottom Sheet
build.gragle file
compile 'com.android.support:appcompat-v7:25.2.0'
compile 'com.android.support:design:25.2.0'
MainActivity
public class MainActivity extends AppCompatActivity {
String TAG = "MainActivity";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
View bottomSheet = findViewById(R.id.design_bottom_sheet);
final BottomSheetBehavior behavior = BottomSheetBehavior.from(bottomSheet);
// listen view change
behavior.setBottomSheetCallback(new BottomSheetBehavior.BottomSheetCallback() {
@Override
public void onStateChanged(@NonNull View bottomSheet, int newState) {
switch (newState) {
case BottomSheetBehavior.STATE_DRAGGING:
Log.d(TAG, "BottomSheetBehavior.STATE_DRAGGING");
break;
case BottomSheetBehavior.STATE_SETTLING:
Log.d(TAG, "BottomSheetBehavior.STATE_SETTLING");
break;
case BottomSheetBehavior.STATE_EXPANDED:
Log.d(TAG, "BottomSheetBehavior.STATE_EXPANDED");
break;
case BottomSheetBehavior.STATE_COLLAPSED:
Log.d(TAG, "BottomSheetBehavior.STATE_COLLAPSED");
break;
case BottomSheetBehavior.STATE_HIDDEN:
Log.d(TAG, "BottomSheetBehavior.STATE_HIDDEN");
break; }
}
@Override
public void onSlide(@NonNull View bottomSheet, float slideOffset) {
Log.d(TAG, "slideOffset: " + slideOffset);
}
});
Button button = (Button) findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (behavior.getState() == BottomSheetBehavior.STATE_COLLAPSED) {
behavior.setState(BottomSheetBehavior.STATE_EXPANDED);
} else {
behavior.setState(BottomSheetBehavior.STATE_COLLAPSED);
}
}
});
}
}
activity_main
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"> <android.support.v4.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior"> <RelativeLayout
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"> <ImageView
android:id="@+id/image"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:src="@mipmap/ic_launcher"/> <Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/image"
android:layout_centerHorizontal="true"
android:text="Show Bottom Sheet"/>
</RelativeLayout>
</android.support.v4.widget.NestedScrollView> <RelativeLayout
android:id="@+id/design_bottom_sheet"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/colorAccent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
app:behavior_hideable="true"
app:behavior_peekHeight="50dp"
app:elevation="4dp"
app:layout_behavior="@string/bottom_sheet_behavior"> <TextView
android:id="@+id/bottomsheet_text"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:text="Introducing Bottom Sheets"
android:textColor="#FFFFFF"/> </RelativeLayout> </android.support.design.widget.CoordinatorLayout>
Sunday, March 12, 2017
[Android Application] Draw Doraemon
Draw Doraemon with sample picture
Collections of drawing/sketches of anime cartoon
Doraemon Cartoon Characters
Kids beginner friendly drawing
save and share picture after draw finish
support android >= 6.0
enjoy this app
Download app from Google Play
Thursday, March 9, 2017
How to see running background services in android 6(marshmallow) and more?
How to see running background services in android 6(marshmallow) and more?
Wednesday, February 8, 2017
[Android App]: Transfer Phone Number
feature:
* if you want change the prefix of all list contacts in your device?
- Ex:
- transfer list contacts start with +84 like: +8411111, +8422222, +8433333, etc... to 03 like: 0311111, 0322222, 0333333, etc...
* If you have a new Smartphone, you want delete all contacts in your old device when you sales or give a someone, you can not handmade to delete every contact?
- use app to delete all contacts in your device is easy and fast with one touch
* Support for update many Type Contacts: MOBILE, HOME, WORK, etc...
Download app from Google Play
Wednesday, January 18, 2017
[App] Football Information
Download app from Google Play
The fast to update football information
your club include league:
- Premier league
- La liga
- Bundesliga
- Serie A
- League One
function:
- Chart
- Schedule
- Result
Enjoy this application
Sunday, January 8, 2017
[App] Round Screen
Draw image with many style at corner your device
It's beautifyfull
Enjoy this application
Download app from Google Play
[Game] Push Square
this is a intellectual game
You have think how to move square to center
Play with me and we are winner
Download app from Google Play
Subscribe to:
Posts (Atom)