Skip to content

Instantly share code, notes, and snippets.

🏠
Working from home

Joe Birch hitherejoe

🏠
Working from home
Block or report user

Report or block hitherejoe

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
View Post.java
public class Post {
public Long id;
public String by;
public Long time;
public ArrayList<Long> kids;
public String url;
public Long score;
public String title;
public String text;
View PostAdapter.java
public class PostAdapter extends RecyclerView.Adapter<PostAdapter.BindingHolder> {
private List<Post> mPosts;
private Context mContext;
private boolean mIsUserPosts;
public PostAdapter(Context context, boolean isUserPosts) {
mContext = context;
mIsUserPosts = isUserPosts;
mPosts = new ArrayList<>();
}
View item_post.xml
<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android">
<data>
<variable name="viewModel" type="com.hitherejoe.mvvm_hackernews.viewModel.PostViewModel" />
</data>
<android.support.v7.widget.CardView
xmlns:card_view="http://schemas.android.com/apk/res-auto"
android:id="@+id/card_view"
View PostViewModelTest.java
@RunWith(RobolectricTestRunner.class)
@Config(constants = BuildConfig.class, sdk = DefaultConfig.EMULATE_SDK, manifest = DefaultConfig.MANIFEST)
public class PostViewModelTest {
private Context mContext;
private PostViewModel mPostViewModel;
private Post mPost;
@Before
public void setUp() {
View PostViewModel.java
public class PostViewModel extends BaseObservable {
private Context context;
private Post post;
private Boolean isUserPosts;
public PostViewModel(Context context, Post post, boolean isUserPosts) {
this.context = context;
this.post = post;
this.isUserPosts = isUserPosts;
View androidMultiplePermissions.java
private void requestMultiplePermissions() {
String locationPermission = Manifest.permission.ACCESS_FINE_LOCATION;
String calendarPermission = Manifest.permission.WRITE_CALENDAR;
int hasLocPermission = checkSelfPermission(locationPermission);
int hasCalPermission = checkSelfPermission(calendarPermission);
List<String> permissions = new ArrayList<String>();
if (hasLocPermission != PackageManager.PERMISSION_GRANTED) {
permissions.add(locationPermission);
}
if (hasCalPermission != PackageManager.PERMISSION_GRANTED) {
View androidPermissionResult.java
@Override
public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
switch (requestCode) {
case REQUEST_LOCATION:
if (grantResults[0] == PackageManager.PERMISSION_GRANTED) {
// Handle permission granted
} else {
// Handle permission denied
}
break;
@hitherejoe
hitherejoe / androidSinglePermission.java
Created Jul 7, 2015
Andriod M - Request single permission
View androidSinglePermission.java
private static final int REQUEST_LOCATION = 1503;
private void requestSinglePermission() {
String locationPermission = Manifest.permission.ACCESS_FINE_LOCATION;
int hasPermission = checkSelfPermission(locationPermission);
String[] permissions = new String[] { locationPermission };
if (hasPermission != PackageManager.PERMISSION_GRANTED) {
requestPermissions(permissions, REQUEST_LOCATION);
} else {
// Phew - we already have permission!
@hitherejoe
hitherejoe / Build.gradle
Created Apr 9, 2015
Android Jacoco setup with Gradle
View Build.gradle
buildTypes {
release {
runProguard false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
signingConfig signingConfigs.release
}
debug {
versionNameSuffix " Debug"
debuggable true
testCoverageEnabled = true
View DirectoryContents
#! /bin/bash
path="./current/";
assets="./assets/";
files=( "$path"* )
files=( "${files[@]##*/}" )
for dir in $assets*; do
for file in "$dir"/*; do
filename="${file##*/}"
You can’t perform that action at this time.