Deprecated Look into using Kotlin and Android Extras Delegates
Pocket Knife
Intent and Bundle utility library for Android which uses annotation processing to generate boilerplate code for you. This library is based on ButterKnife and Dagger
NOTE
Version 2.0 generated code is not compatible with version 1.0. Any libraries that use Pocket Knife will need to be updated to 2.0.
class ExampleActivity extends Activity {
@BindExtra
int id;
@SaveState
int listPosition;
public void onCreate(Bundle savedInstanceState) {
...
PocketKnife.bindExtras(this);
PocketKnife.restoreInstanceState(this, savedInstanceState);
...
}
public void onSaveInstanceState(Bundle outState) {
...
PocketKnife.saveInstanceState(this, outState);
...
}
}
For documentation and additional information see the website.
Download
Download the latest JARs core and compiler or grab via Maven:
<dependency>
<groupId>com.vikingsen</groupId>
<artifactId>pocketknife-core</artifactId>
<version>3.2.0</version> </dependency> <dependency>
<groupId>com.vikingsen</groupId>
<artifactId>pocketknife-compiler</artifactId>
<version>3.2.0</version>
<scope>provided</scope> </dependency>
or Gradle:
compile 'com.vikingsen:pocketknife-core:3.2.0' provided 'com.vikingsen:pocketknife-compiler:3.2.0'
License
Copyright 2014-2016 Jordan Hansen Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.