VOTING POWER100.00%
DOWNVOTE POWER100.00%
RESOURCE CREDITS100.00%
REPUTATION PROGRESS3.62%
Net Worth
0.075USD
STEEM
0.000STEEM
SBD
0.000SBD
Effective Power
5.007SP
├── Own SP
1.294SP
└── Incoming DelegationsDeleg
+3.713SP
Detailed Balance
| STEEM | ||
| balance | 0.000STEEM | STEEM |
| market_balance | 0.000STEEM | STEEM |
| savings_balance | 0.000STEEM | STEEM |
| reward_steem_balance | 0.000STEEM | STEEM |
| STEEM POWER | ||
| Own SP | 1.294SP | SP |
| Delegated Out | 0.000SP | SP |
| Delegation In | 3.713SP | SP |
| Effective Power | 5.007SP | SP |
| Reward SP (pending) | 0.000SP | SP |
| SBD | ||
| sbd_balance | 0.000SBD | SBD |
| sbd_conversions | 0.000SBD | SBD |
| sbd_market_balance | 0.000SBD | SBD |
| savings_sbd_balance | 0.000SBD | SBD |
| reward_sbd_balance | 0.000SBD | SBD |
{
"balance": "0.000 STEEM",
"savings_balance": "0.000 STEEM",
"reward_steem_balance": "0.000 STEEM",
"vesting_shares": "2104.876347 VESTS",
"delegated_vesting_shares": "0.000000 VESTS",
"received_vesting_shares": "6038.783459 VESTS",
"sbd_balance": "0.000 SBD",
"savings_sbd_balance": "0.000 SBD",
"reward_sbd_balance": "0.000 SBD",
"conversions": []
}Account Info
| name | irmapijanist |
| id | 738556 |
| rank | 1,410,848 |
| reputation | 13035577898 |
| created | 2018-02-08T23:36:27 |
| recovery_account | steem |
| proxy | None |
| post_count | 28 |
| comment_count | 0 |
| lifetime_vote_count | 0 |
| witnesses_voted_for | 0 |
| last_post | 2018-03-21T11:46:00 |
| last_root_post | 2018-03-21T11:46:00 |
| last_vote_time | 2018-03-16T19:54:39 |
| proxied_vsf_votes | 0, 0, 0, 0 |
| can_vote | 1 |
| voting_power | 0 |
| delayed_votes | 0 |
| balance | 0.000 STEEM |
| savings_balance | 0.000 STEEM |
| sbd_balance | 0.000 SBD |
| savings_sbd_balance | 0.000 SBD |
| vesting_shares | 2104.876347 VESTS |
| delegated_vesting_shares | 0.000000 VESTS |
| received_vesting_shares | 6038.783459 VESTS |
| reward_vesting_balance | 0.000000 VESTS |
| vesting_balance | 0.000 STEEM |
| vesting_withdraw_rate | 0.000000 VESTS |
| next_vesting_withdrawal | 1969-12-31T23:59:59 |
| withdrawn | 0 |
| to_withdraw | 0 |
| withdraw_routes | 0 |
| savings_withdraw_requests | 0 |
| last_account_recovery | 1970-01-01T00:00:00 |
| reset_account | null |
| last_owner_update | 1970-01-01T00:00:00 |
| last_account_update | 2018-03-21T09:52:45 |
| mined | No |
| sbd_seconds | 7,874,805 |
| sbd_last_interest_payment | 2018-03-16T14:17:09 |
| savings_sbd_last_interest_payment | 1970-01-01T00:00:00 |
{
"active": {
"account_auths": [],
"key_auths": [
[
"STM8N82agCm7jtA1QaCw9fxD89zX8NF68FEthWRYuEDkW7D2N12yd",
1
]
],
"weight_threshold": 1
},
"balance": "0.000 STEEM",
"can_vote": true,
"comment_count": 0,
"created": "2018-02-08T23:36:27",
"curation_rewards": 8,
"delegated_vesting_shares": "0.000000 VESTS",
"downvote_manabar": {
"current_mana": 2035914951,
"last_update_time": 1779067848
},
"guest_bloggers": [],
"id": 738556,
"json_metadata": "{\"profile\":{\"location\":\"French - Luxembourg\",\"profile_image\":\"https://s13.postimg.org/f021b4r1j/Screenshot_5.png\",\"cover_image\":\"https://s18.postimg.org/szp44e2jt/cover_steemit1.jpg\"}}",
"last_account_recovery": "1970-01-01T00:00:00",
"last_account_update": "2018-03-21T09:52:45",
"last_owner_update": "1970-01-01T00:00:00",
"last_post": "2018-03-21T11:46:00",
"last_root_post": "2018-03-21T11:46:00",
"last_vote_time": "2018-03-16T19:54:39",
"lifetime_vote_count": 0,
"market_history": [],
"memo_key": "STM6GKmd6dv1mkTj6nKZQ4jjhCjQjP8GcD2J2AEXVHSi9cv5pZnAD",
"mined": false,
"name": "irmapijanist",
"next_vesting_withdrawal": "1969-12-31T23:59:59",
"other_history": [],
"owner": {
"account_auths": [],
"key_auths": [
[
"STM7d3dHRWg4cWWdsY7THegARAU63nXd9np2oD7YPrRVnZG5z6mNq",
1
]
],
"weight_threshold": 1
},
"pending_claimed_accounts": 0,
"post_bandwidth": 0,
"post_count": 28,
"post_history": [],
"posting": {
"account_auths": [
[
"utopian.app",
1
]
],
"key_auths": [
[
"STM5Gp5jLeiLqdJpZxRFhRFfFZNHwwe4d8fhZsUqK3zMBpz2bWRSA",
1
]
],
"weight_threshold": 1
},
"posting_json_metadata": "{\"profile\":{\"location\":\"French - Luxembourg\",\"profile_image\":\"https://s13.postimg.org/f021b4r1j/Screenshot_5.png\",\"cover_image\":\"https://s18.postimg.org/szp44e2jt/cover_steemit1.jpg\"}}",
"posting_rewards": 1041,
"proxied_vsf_votes": [
0,
0,
0,
0
],
"proxy": "",
"received_vesting_shares": "6038.783459 VESTS",
"recovery_account": "steem",
"reputation": "13035577898",
"reset_account": "null",
"reward_sbd_balance": "0.000 SBD",
"reward_steem_balance": "0.000 STEEM",
"reward_vesting_balance": "0.000000 VESTS",
"reward_vesting_steem": "0.000 STEEM",
"savings_balance": "0.000 STEEM",
"savings_sbd_balance": "0.000 SBD",
"savings_sbd_last_interest_payment": "1970-01-01T00:00:00",
"savings_sbd_seconds": "0",
"savings_sbd_seconds_last_update": "1970-01-01T00:00:00",
"savings_withdraw_requests": 0,
"sbd_balance": "0.000 SBD",
"sbd_last_interest_payment": "2018-03-16T14:17:09",
"sbd_seconds": "7874805",
"sbd_seconds_last_update": "2018-04-05T02:20:57",
"tags_usage": [],
"to_withdraw": 0,
"transfer_history": [],
"vesting_balance": "0.000 STEEM",
"vesting_shares": "2104.876347 VESTS",
"vesting_withdraw_rate": "0.000000 VESTS",
"vote_history": [],
"voting_manabar": {
"current_mana": "8143659806",
"last_update_time": 1779067848
},
"voting_power": 0,
"withdraw_routes": 0,
"withdrawn": 0,
"witness_votes": [],
"witnesses_voted_for": 0,
"rank": 1410848
}Withdraw Routes
| Incoming | Outgoing |
|---|---|
Empty | Empty |
{
"incoming": [],
"outgoing": []
}From Date
To Date
steemdelegated 3.713 SP to @irmapijanist2026/05/18 01:30:48
steemdelegated 3.713 SP to @irmapijanist
2026/05/18 01:30:48
| delegatee | irmapijanist |
| delegator | steem |
| vesting shares | 6038.783459 VESTS |
| Transaction Info | Block #106144951/Trx 5c3b7b4ae21858704c905cfb71b3d22f7967225a |
View Raw JSON Data
{
"block": 106144951,
"op": [
"delegate_vesting_shares",
{
"delegatee": "irmapijanist",
"delegator": "steem",
"vesting_shares": "6038.783459 VESTS"
}
],
"op_in_trx": 0,
"timestamp": "2026-05-18T01:30:48",
"trx_id": "5c3b7b4ae21858704c905cfb71b3d22f7967225a",
"trx_in_block": 0,
"virtual_op": 0
}steemdelegated 2.045 SP to @irmapijanist2026/05/12 08:57:27
steemdelegated 2.045 SP to @irmapijanist
2026/05/12 08:57:27
| delegatee | irmapijanist |
| delegator | steem |
| vesting shares | 3326.573054 VESTS |
| Transaction Info | Block #105981839/Trx 1332f747384aa57fccd85f1f452586a232cc4b92 |
View Raw JSON Data
{
"block": 105981839,
"op": [
"delegate_vesting_shares",
{
"delegatee": "irmapijanist",
"delegator": "steem",
"vesting_shares": "3326.573054 VESTS"
}
],
"op_in_trx": 0,
"timestamp": "2026-05-12T08:57:27",
"trx_id": "1332f747384aa57fccd85f1f452586a232cc4b92",
"trx_in_block": 1,
"virtual_op": 0
}steemdelegated 3.720 SP to @irmapijanist2026/04/26 00:49:39
steemdelegated 3.720 SP to @irmapijanist
2026/04/26 00:49:39
| delegatee | irmapijanist |
| delegator | steem |
| vesting shares | 6051.299215 VESTS |
| Transaction Info | Block #105512569/Trx b754e652fc643b23ec110925f29d17c2c21f87b4 |
View Raw JSON Data
{
"block": 105512569,
"op": [
"delegate_vesting_shares",
{
"delegatee": "irmapijanist",
"delegator": "steem",
"vesting_shares": "6051.299215 VESTS"
}
],
"op_in_trx": 0,
"timestamp": "2026-04-26T00:49:39",
"trx_id": "b754e652fc643b23ec110925f29d17c2c21f87b4",
"trx_in_block": 1,
"virtual_op": 0
}steemdelegated 2.071 SP to @irmapijanist2026/01/23 11:11:39
steemdelegated 2.071 SP to @irmapijanist
2026/01/23 11:11:39
| delegatee | irmapijanist |
| delegator | steem |
| vesting shares | 3368.119873 VESTS |
| Transaction Info | Block #102855878/Trx b2af7d4aa72bd30293ee8f07206f376049ed666d |
View Raw JSON Data
{
"block": 102855878,
"op": [
"delegate_vesting_shares",
{
"delegatee": "irmapijanist",
"delegator": "steem",
"vesting_shares": "3368.119873 VESTS"
}
],
"op_in_trx": 0,
"timestamp": "2026-01-23T11:11:39",
"trx_id": "b2af7d4aa72bd30293ee8f07206f376049ed666d",
"trx_in_block": 0,
"virtual_op": 0
}steemdelegated 2.172 SP to @irmapijanist2024/12/17 06:28:45
steemdelegated 2.172 SP to @irmapijanist
2024/12/17 06:28:45
| delegatee | irmapijanist |
| delegator | steem |
| vesting shares | 3532.339070 VESTS |
| Transaction Info | Block #91302235/Trx fbda5ba631adf6fd0dc9b1a61cbe26542ce70f0d |
View Raw JSON Data
{
"block": 91302235,
"op": [
"delegate_vesting_shares",
{
"delegatee": "irmapijanist",
"delegator": "steem",
"vesting_shares": "3532.339070 VESTS"
}
],
"op_in_trx": 0,
"timestamp": "2024-12-17T06:28:45",
"trx_id": "fbda5ba631adf6fd0dc9b1a61cbe26542ce70f0d",
"trx_in_block": 4,
"virtual_op": 0
}steemdelegated 2.276 SP to @irmapijanist2023/11/13 22:10:39
steemdelegated 2.276 SP to @irmapijanist
2023/11/13 22:10:39
| delegatee | irmapijanist |
| delegator | steem |
| vesting shares | 3701.472602 VESTS |
| Transaction Info | Block #79856418/Trx 344f31ee2aabd6aabea305f1ce1b8ec078c38bae |
View Raw JSON Data
{
"block": 79856418,
"op": [
"delegate_vesting_shares",
{
"delegatee": "irmapijanist",
"delegator": "steem",
"vesting_shares": "3701.472602 VESTS"
}
],
"op_in_trx": 0,
"timestamp": "2023-11-13T22:10:39",
"trx_id": "344f31ee2aabd6aabea305f1ce1b8ec078c38bae",
"trx_in_block": 3,
"virtual_op": 0
}steemdelegated 4.082 SP to @irmapijanist2023/09/21 23:19:15
steemdelegated 4.082 SP to @irmapijanist
2023/09/21 23:19:15
| delegatee | irmapijanist |
| delegator | steem |
| vesting shares | 6638.751388 VESTS |
| Transaction Info | Block #78349614/Trx 17a7dd3978ecd60eea09f382b1e877bb85538ecb |
View Raw JSON Data
{
"block": 78349614,
"op": [
"delegate_vesting_shares",
{
"delegatee": "irmapijanist",
"delegator": "steem",
"vesting_shares": "6638.751388 VESTS"
}
],
"op_in_trx": 0,
"timestamp": "2023-09-21T23:19:15",
"trx_id": "17a7dd3978ecd60eea09f382b1e877bb85538ecb",
"trx_in_block": 2,
"virtual_op": 0
}steemdelegated 4.218 SP to @irmapijanist2022/11/03 12:55:03
steemdelegated 4.218 SP to @irmapijanist
2022/11/03 12:55:03
| delegatee | irmapijanist |
| delegator | steem |
| vesting shares | 6860.432826 VESTS |
| Transaction Info | Block #69114711/Trx 2d16e7670361f4c0045f47abf4e27b836d92757d |
View Raw JSON Data
{
"block": 69114711,
"op": [
"delegate_vesting_shares",
{
"delegatee": "irmapijanist",
"delegator": "steem",
"vesting_shares": "6860.432826 VESTS"
}
],
"op_in_trx": 0,
"timestamp": "2022-11-03T12:55:03",
"trx_id": "2d16e7670361f4c0045f47abf4e27b836d92757d",
"trx_in_block": 4,
"virtual_op": 0
}steemdelegated 4.353 SP to @irmapijanist2022/01/17 12:04:57
steemdelegated 4.353 SP to @irmapijanist
2022/01/17 12:04:57
| delegatee | irmapijanist |
| delegator | steem |
| vesting shares | 7080.966057 VESTS |
| Transaction Info | Block #60810760/Trx 1d5c7b2134bf3afc139133a095f128efbe9dd534 |
View Raw JSON Data
{
"block": 60810760,
"op": [
"delegate_vesting_shares",
{
"delegatee": "irmapijanist",
"delegator": "steem",
"vesting_shares": "7080.966057 VESTS"
}
],
"op_in_trx": 0,
"timestamp": "2022-01-17T12:04:57",
"trx_id": "1d5c7b2134bf3afc139133a095f128efbe9dd534",
"trx_in_block": 7,
"virtual_op": 0
}steemdelegated 4.466 SP to @irmapijanist2021/06/14 01:57:06
steemdelegated 4.466 SP to @irmapijanist
2021/06/14 01:57:06
| delegatee | irmapijanist |
| delegator | steem |
| vesting shares | 7264.734715 VESTS |
| Transaction Info | Block #54609079/Trx 99f9517721d14438a1b1ff317e00c6f24608f555 |
View Raw JSON Data
{
"block": 54609079,
"op": [
"delegate_vesting_shares",
{
"delegatee": "irmapijanist",
"delegator": "steem",
"vesting_shares": "7264.734715 VESTS"
}
],
"op_in_trx": 0,
"timestamp": "2021-06-14T01:57:06",
"trx_id": "99f9517721d14438a1b1ff317e00c6f24608f555",
"trx_in_block": 3,
"virtual_op": 0
}steemdelegated 4.582 SP to @irmapijanist2020/12/11 12:14:12
steemdelegated 4.582 SP to @irmapijanist
2020/12/11 12:14:12
| delegatee | irmapijanist |
| delegator | steem |
| vesting shares | 7452.156689 VESTS |
| Transaction Info | Block #49356489/Trx 6fcb1fea448a215ee9ed27eac7d99253ade8d4cf |
View Raw JSON Data
{
"block": 49356489,
"op": [
"delegate_vesting_shares",
{
"delegatee": "irmapijanist",
"delegator": "steem",
"vesting_shares": "7452.156689 VESTS"
}
],
"op_in_trx": 0,
"timestamp": "2020-12-11T12:14:12",
"trx_id": "6fcb1fea448a215ee9ed27eac7d99253ade8d4cf",
"trx_in_block": 0,
"virtual_op": 0
}steemdelegated 1.176 SP to @irmapijanist2020/12/06 05:51:09
steemdelegated 1.176 SP to @irmapijanist
2020/12/06 05:51:09
| delegatee | irmapijanist |
| delegator | steem |
| vesting shares | 1912.543513 VESTS |
| Transaction Info | Block #49208046/Trx ff97a707ca919be1aa0dc0d707d0a508c11f2e24 |
View Raw JSON Data
{
"block": 49208046,
"op": [
"delegate_vesting_shares",
{
"delegatee": "irmapijanist",
"delegator": "steem",
"vesting_shares": "1912.543513 VESTS"
}
],
"op_in_trx": 0,
"timestamp": "2020-12-06T05:51:09",
"trx_id": "ff97a707ca919be1aa0dc0d707d0a508c11f2e24",
"trx_in_block": 0,
"virtual_op": 0
}steemdelegated 4.585 SP to @irmapijanist2020/12/05 15:52:03
steemdelegated 4.585 SP to @irmapijanist
2020/12/05 15:52:03
| delegatee | irmapijanist |
| delegator | steem |
| vesting shares | 7458.364543 VESTS |
| Transaction Info | Block #49191582/Trx ef9b3cddb9c062787e81a1c0f20d48f070d02cc8 |
View Raw JSON Data
{
"block": 49191582,
"op": [
"delegate_vesting_shares",
{
"delegatee": "irmapijanist",
"delegator": "steem",
"vesting_shares": "7458.364543 VESTS"
}
],
"op_in_trx": 0,
"timestamp": "2020-12-05T15:52:03",
"trx_id": "ef9b3cddb9c062787e81a1c0f20d48f070d02cc8",
"trx_in_block": 7,
"virtual_op": 0
}steemdelegated 1.180 SP to @irmapijanist2020/11/02 17:57:48
steemdelegated 1.180 SP to @irmapijanist
2020/11/02 17:57:48
| delegatee | irmapijanist |
| delegator | steem |
| vesting shares | 1920.017158 VESTS |
| Transaction Info | Block #48260539/Trx 484bb9f66ee242430552487dde27a61834ca7941 |
View Raw JSON Data
{
"block": 48260539,
"op": [
"delegate_vesting_shares",
{
"delegatee": "irmapijanist",
"delegator": "steem",
"vesting_shares": "1920.017158 VESTS"
}
],
"op_in_trx": 0,
"timestamp": "2020-11-02T17:57:48",
"trx_id": "484bb9f66ee242430552487dde27a61834ca7941",
"trx_in_block": 3,
"virtual_op": 0
}steemdelegated 4.710 SP to @irmapijanist2020/05/09 06:49:39
steemdelegated 4.710 SP to @irmapijanist
2020/05/09 06:49:39
| delegatee | irmapijanist |
| delegator | steem |
| vesting shares | 7661.169902 VESTS |
| Transaction Info | Block #43218313/Trx a5928a4a55b0b43a1b83f7df4ba2ed9cabdef1f3 |
View Raw JSON Data
{
"block": 43218313,
"op": [
"delegate_vesting_shares",
{
"delegatee": "irmapijanist",
"delegator": "steem",
"vesting_shares": "7661.169902 VESTS"
}
],
"op_in_trx": 0,
"timestamp": "2020-05-09T06:49:39",
"trx_id": "a5928a4a55b0b43a1b83f7df4ba2ed9cabdef1f3",
"trx_in_block": 2,
"virtual_op": 0
}steemdelegated 1.201 SP to @irmapijanist2020/05/08 10:35:45
steemdelegated 1.201 SP to @irmapijanist
2020/05/08 10:35:45
| delegatee | irmapijanist |
| delegator | steem |
| vesting shares | 1953.311140 VESTS |
| Transaction Info | Block #43194604/Trx 47a405bb62a5e362ee2ddbaddcb0f246be04d918 |
View Raw JSON Data
{
"block": 43194604,
"op": [
"delegate_vesting_shares",
{
"delegatee": "irmapijanist",
"delegator": "steem",
"vesting_shares": "1953.311140 VESTS"
}
],
"op_in_trx": 0,
"timestamp": "2020-05-08T10:35:45",
"trx_id": "47a405bb62a5e362ee2ddbaddcb0f246be04d918",
"trx_in_block": 2,
"virtual_op": 0
}2020/02/09 00:44:54
2020/02/09 00:44:54
| author | steemitboard |
| body | Congratulations @irmapijanist! You received a personal award! <table><tr><td>https://steemitimages.com/70x70/http://steemitboard.com/@irmapijanist/birthday2.png</td><td>Happy Birthday! - You are on the Steem blockchain for 2 years!</td></tr></table> <sub>_You can view [your badges on your Steem Board](https://steemitboard.com/@irmapijanist) and compare to others on the [Steem Ranking](https://steemitboard.com/ranking/index.php?name=irmapijanist)_</sub> ###### [Vote for @Steemitboard as a witness](https://v2.steemconnect.com/sign/account-witness-vote?witness=steemitboard&approve=1) to get one more award and increased upvotes! |
| json metadata | {"image":["https://steemitboard.com/img/notify.png"]} |
| parent author | irmapijanist |
| parent permlink | coding-the-functional-android-app-in-kotlin-get-started |
| permlink | steemitboard-notify-irmapijanist-20200209t004454000z |
| title | |
| Transaction Info | Block #40654183/Trx ecdb818acd4f86e33c5f37c8ef4005be4b68ae73 |
View Raw JSON Data
{
"block": 40654183,
"op": [
"comment",
{
"author": "steemitboard",
"body": "Congratulations @irmapijanist! You received a personal award!\n\n<table><tr><td>https://steemitimages.com/70x70/http://steemitboard.com/@irmapijanist/birthday2.png</td><td>Happy Birthday! - You are on the Steem blockchain for 2 years!</td></tr></table>\n\n<sub>_You can view [your badges on your Steem Board](https://steemitboard.com/@irmapijanist) and compare to others on the [Steem Ranking](https://steemitboard.com/ranking/index.php?name=irmapijanist)_</sub>\n\n\n###### [Vote for @Steemitboard as a witness](https://v2.steemconnect.com/sign/account-witness-vote?witness=steemitboard&approve=1) to get one more award and increased upvotes!",
"json_metadata": "{\"image\":[\"https://steemitboard.com/img/notify.png\"]}",
"parent_author": "irmapijanist",
"parent_permlink": "coding-the-functional-android-app-in-kotlin-get-started",
"permlink": "steemitboard-notify-irmapijanist-20200209t004454000z",
"title": ""
}
],
"op_in_trx": 0,
"timestamp": "2020-02-09T00:44:54",
"trx_id": "ecdb818acd4f86e33c5f37c8ef4005be4b68ae73",
"trx_in_block": 7,
"virtual_op": 0
}steemdelegated 4.823 SP to @irmapijanist2019/06/25 15:12:57
steemdelegated 4.823 SP to @irmapijanist
2019/06/25 15:12:57
| delegatee | irmapijanist |
| delegator | steem |
| vesting shares | 7844.211600 VESTS |
| Transaction Info | Block #34111589/Trx 7088e20676c52fdcbb47c27d3c3c1911d52e12f9 |
View Raw JSON Data
{
"block": 34111589,
"op": [
"delegate_vesting_shares",
{
"delegatee": "irmapijanist",
"delegator": "steem",
"vesting_shares": "7844.211600 VESTS"
}
],
"op_in_trx": 0,
"timestamp": "2019-06-25T15:12:57",
"trx_id": "7088e20676c52fdcbb47c27d3c3c1911d52e12f9",
"trx_in_block": 13,
"virtual_op": 0
}2019/02/09 00:37:21
2019/02/09 00:37:21
| author | steemitboard |
| body | Congratulations @irmapijanist! You received a personal award! <table><tr><td>https://steemitimages.com/70x70/http://steemitboard.com/@irmapijanist/birthday1.png</td><td>Happy Birthday! - You are on the Steem blockchain for 1 year!</td></tr></table> <sub>_[Click here to view your Board](https://steemitboard.com/@irmapijanist)_</sub> > Support [SteemitBoard's project](https://steemit.com/@steemitboard)! **[Vote for its witness](https://v2.steemconnect.com/sign/account-witness-vote?witness=steemitboard&approve=1)** and **get one more award**! |
| json metadata | {"image":["https://steemitboard.com/img/notify.png"]} |
| parent author | irmapijanist |
| parent permlink | coding-the-functional-android-app-in-kotlin-get-started |
| permlink | steemitboard-notify-irmapijanist-20190209t003720000z |
| title | |
| Transaction Info | Block #30182027/Trx 7e050a83bc6bfc9820aa505b51d0991bc37d903d |
View Raw JSON Data
{
"block": 30182027,
"op": [
"comment",
{
"author": "steemitboard",
"body": "Congratulations @irmapijanist! You received a personal award!\n\n<table><tr><td>https://steemitimages.com/70x70/http://steemitboard.com/@irmapijanist/birthday1.png</td><td>Happy Birthday! - You are on the Steem blockchain for 1 year!</td></tr></table>\n\n<sub>_[Click here to view your Board](https://steemitboard.com/@irmapijanist)_</sub>\n\n\n> Support [SteemitBoard's project](https://steemit.com/@steemitboard)! **[Vote for its witness](https://v2.steemconnect.com/sign/account-witness-vote?witness=steemitboard&approve=1)** and **get one more award**!",
"json_metadata": "{\"image\":[\"https://steemitboard.com/img/notify.png\"]}",
"parent_author": "irmapijanist",
"parent_permlink": "coding-the-functional-android-app-in-kotlin-get-started",
"permlink": "steemitboard-notify-irmapijanist-20190209t003720000z",
"title": ""
}
],
"op_in_trx": 0,
"timestamp": "2019-02-09T00:37:21",
"trx_id": "7e050a83bc6bfc9820aa505b51d0991bc37d903d",
"trx_in_block": 5,
"virtual_op": 0
}steemdelegated 4.945 SP to @irmapijanist2018/07/05 04:17:27
steemdelegated 4.945 SP to @irmapijanist
2018/07/05 04:17:27
| delegatee | irmapijanist |
| delegator | steem |
| vesting shares | 8043.209017 VESTS |
| Transaction Info | Block #23899501/Trx 3cc30d921e613e4e7cb9e05f70a4f782f0df5b7a |
View Raw JSON Data
{
"block": 23899501,
"op": [
"delegate_vesting_shares",
{
"delegatee": "irmapijanist",
"delegator": "steem",
"vesting_shares": "8043.209017 VESTS"
}
],
"op_in_trx": 0,
"timestamp": "2018-07-05T04:17:27",
"trx_id": "3cc30d921e613e4e7cb9e05f70a4f782f0df5b7a",
"trx_in_block": 15,
"virtual_op": 0
}steemdelegated 17.512 SP to @irmapijanist2018/04/05 03:27:36
steemdelegated 17.512 SP to @irmapijanist
2018/04/05 03:27:36
| delegatee | irmapijanist |
| delegator | steem |
| vesting shares | 28484.079271 VESTS |
| Transaction Info | Block #21289708/Trx 35d247927ec6e296284839fc20582b9896c2743a |
View Raw JSON Data
{
"block": 21289708,
"op": [
"delegate_vesting_shares",
{
"delegatee": "irmapijanist",
"delegator": "steem",
"vesting_shares": "28484.079271 VESTS"
}
],
"op_in_trx": 0,
"timestamp": "2018-04-05T03:27:36",
"trx_id": "35d247927ec6e296284839fc20582b9896c2743a",
"trx_in_block": 26,
"virtual_op": 0
}irmapijanistsent 0.189 STEEM to @fernandavera- "paid"2018/04/05 02:21:21
irmapijanistsent 0.189 STEEM to @fernandavera- "paid"
2018/04/05 02:21:21
| amount | 0.189 STEEM |
| from | irmapijanist |
| memo | paid |
| to | fernandavera |
| Transaction Info | Block #21288383/Trx 68503746afd39bbfd4116309984d894451d9db0e |
View Raw JSON Data
{
"block": 21288383,
"op": [
"transfer",
{
"amount": "0.189 STEEM",
"from": "irmapijanist",
"memo": "paid",
"to": "fernandavera"
}
],
"op_in_trx": 0,
"timestamp": "2018-04-05T02:21:21",
"trx_id": "68503746afd39bbfd4116309984d894451d9db0e",
"trx_in_block": 35,
"virtual_op": 0
}irmapijanistsent 0.666 SBD to @fernandavera- "paid"2018/04/05 02:20:57
irmapijanistsent 0.666 SBD to @fernandavera- "paid"
2018/04/05 02:20:57
| amount | 0.666 SBD |
| from | irmapijanist |
| memo | paid |
| to | fernandavera |
| Transaction Info | Block #21288375/Trx 70440fdf2aaacccb3ca1f14573eddee3747e1840 |
View Raw JSON Data
{
"block": 21288375,
"op": [
"transfer",
{
"amount": "0.666 SBD",
"from": "irmapijanist",
"memo": "paid",
"to": "fernandavera"
}
],
"op_in_trx": 0,
"timestamp": "2018-04-05T02:20:57",
"trx_id": "70440fdf2aaacccb3ca1f14573eddee3747e1840",
"trx_in_block": 44,
"virtual_op": 0
}irmapijanistclaimed reward balance: 0.666 SBD, 0.412 SP2018/04/05 02:08:09
irmapijanistclaimed reward balance: 0.666 SBD, 0.412 SP
2018/04/05 02:08:09
| account | irmapijanist |
| reward sbd | 0.666 SBD |
| reward steem | 0.000 STEEM |
| reward vests | 669.366506 VESTS |
| Transaction Info | Block #21288119/Trx d4d0c0e3b4129890144b8f6667bf035943a2788f |
View Raw JSON Data
{
"block": 21288119,
"op": [
"claim_reward_balance",
{
"account": "irmapijanist",
"reward_sbd": "0.666 SBD",
"reward_steem": "0.000 STEEM",
"reward_vests": "669.366506 VESTS"
}
],
"op_in_trx": 0,
"timestamp": "2018-04-05T02:08:09",
"trx_id": "d4d0c0e3b4129890144b8f6667bf035943a2788f",
"trx_in_block": 2,
"virtual_op": 0
}irmapijanistreceived 0.349 SBD, 0.208 SP author reward for @irmapijanist / review-game-titanfall-22018/03/23 13:25:03
irmapijanistreceived 0.349 SBD, 0.208 SP author reward for @irmapijanist / review-game-titanfall-2
2018/03/23 13:25:03
| author | irmapijanist |
| permlink | review-game-titanfall-2 |
| sbd payout | 0.349 SBD |
| steem payout | 0.000 STEEM |
| vesting payout | 338.744631 VESTS |
| Transaction Info | Block #20927354/Virtual Operation #15 |
View Raw JSON Data
{
"block": 20927354,
"op": [
"author_reward",
{
"author": "irmapijanist",
"permlink": "review-game-titanfall-2",
"sbd_payout": "0.349 SBD",
"steem_payout": "0.000 STEEM",
"vesting_payout": "338.744631 VESTS"
}
],
"op_in_trx": 0,
"timestamp": "2018-03-23T13:25:03",
"trx_id": "0000000000000000000000000000000000000000",
"trx_in_block": 4294967295,
"virtual_op": 15
}irmapijanistreceived 0.004 SP curation reward for @irmapijanist / review-game-titanfall-22018/03/23 13:25:03
irmapijanistreceived 0.004 SP curation reward for @irmapijanist / review-game-titanfall-2
2018/03/23 13:25:03
| comment author | irmapijanist |
| comment permlink | review-game-titanfall-2 |
| curator | irmapijanist |
| reward | 6.121890 VESTS |
| Transaction Info | Block #20927354/Virtual Operation #13 |
View Raw JSON Data
{
"block": 20927354,
"op": [
"curation_reward",
{
"comment_author": "irmapijanist",
"comment_permlink": "review-game-titanfall-2",
"curator": "irmapijanist",
"reward": "6.121890 VESTS"
}
],
"op_in_trx": 0,
"timestamp": "2018-03-23T13:25:03",
"trx_id": "0000000000000000000000000000000000000000",
"trx_in_block": 4294967295,
"virtual_op": 13
}irmapijanistreceived 0.209 SBD, 0.124 SP author reward for @irmapijanist / heir-of-light-android-os-game-review2018/03/23 00:26:39
irmapijanistreceived 0.209 SBD, 0.124 SP author reward for @irmapijanist / heir-of-light-android-os-game-review
2018/03/23 00:26:39
| author | irmapijanist |
| permlink | heir-of-light-android-os-game-review |
| sbd payout | 0.209 SBD |
| steem payout | 0.000 STEEM |
| vesting payout | 202.028136 VESTS |
| Transaction Info | Block #20911829/Virtual Operation #7 |
View Raw JSON Data
{
"block": 20911829,
"op": [
"author_reward",
{
"author": "irmapijanist",
"permlink": "heir-of-light-android-os-game-review",
"sbd_payout": "0.209 SBD",
"steem_payout": "0.000 STEEM",
"vesting_payout": "202.028136 VESTS"
}
],
"op_in_trx": 0,
"timestamp": "2018-03-23T00:26:39",
"trx_id": "0000000000000000000000000000000000000000",
"trx_in_block": 4294967295,
"virtual_op": 7
}irmapijanistreceived 0.003 SP curation reward for @karinaayu / armored-warfare-assault-android-os-game-review2018/03/22 23:39:12
irmapijanistreceived 0.003 SP curation reward for @karinaayu / armored-warfare-assault-android-os-game-review
2018/03/22 23:39:12
| comment author | karinaayu |
| comment permlink | armored-warfare-assault-android-os-game-review |
| curator | irmapijanist |
| reward | 4.081383 VESTS |
| Transaction Info | Block #20910884/Virtual Operation #9 |
View Raw JSON Data
{
"block": 20910884,
"op": [
"curation_reward",
{
"comment_author": "karinaayu",
"comment_permlink": "armored-warfare-assault-android-os-game-review",
"curator": "irmapijanist",
"reward": "4.081383 VESTS"
}
],
"op_in_trx": 0,
"timestamp": "2018-03-22T23:39:12",
"trx_id": "0000000000000000000000000000000000000000",
"trx_in_block": 4294967295,
"virtual_op": 9
}2018/03/21 17:18:15
2018/03/21 17:18:15
| author | sdtyldz |
| body | Your contribution cannot be approved because it does not follow the [Utopian Rules](https://utopian.io/rules), and is considered as **plagiarism**. Plagiarism is not allowed on Utopian, and posts that engage in plagiarism will be flagged and hidden forever. - https://code.tutsplus.com/tutorials/start-developing-android-apps-with-kotlin-part-1--cms-27827 You can contact us on [Discord](https://discord.gg/uTyJkNm). **[[utopian-moderator]](https://utopian.io/moderators)** |
| json metadata | {"tags":["utopian-io"],"community":"utopian","app":"utopian/1.0.0"} |
| parent author | irmapijanist |
| parent permlink | coding-the-functional-android-app-in-kotlin-get-started |
| permlink | re-irmapijanist-coding-the-functional-android-app-in-kotlin-get-started-20180321t171810277z |
| title | |
| Transaction Info | Block #20874804/Trx cb4643e930abd7c06cf55c19e7da49b7f9a65ef5 |
View Raw JSON Data
{
"block": 20874804,
"op": [
"comment",
{
"author": "sdtyldz",
"body": "Your contribution cannot be approved because it does not follow the [Utopian Rules](https://utopian.io/rules), and is considered as **plagiarism**. Plagiarism is not allowed on Utopian, and posts that engage in plagiarism will be flagged and hidden forever.\n- https://code.tutsplus.com/tutorials/start-developing-android-apps-with-kotlin-part-1--cms-27827\n\nYou can contact us on [Discord](https://discord.gg/uTyJkNm).\n**[[utopian-moderator]](https://utopian.io/moderators)**",
"json_metadata": "{\"tags\":[\"utopian-io\"],\"community\":\"utopian\",\"app\":\"utopian/1.0.0\"}",
"parent_author": "irmapijanist",
"parent_permlink": "coding-the-functional-android-app-in-kotlin-get-started",
"permlink": "re-irmapijanist-coding-the-functional-android-app-in-kotlin-get-started-20180321t171810277z",
"title": ""
}
],
"op_in_trx": 0,
"timestamp": "2018-03-21T17:18:15",
"trx_id": "cb4643e930abd7c06cf55c19e7da49b7f9a65ef5",
"trx_in_block": 57,
"virtual_op": 0
}irmapijanistpublished a new post: coding-the-functional-android-app-in-kotlin-get-started2018/03/21 17:17:45
irmapijanistpublished a new post: coding-the-functional-android-app-in-kotlin-get-started
2018/03/21 17:17:45
| author | irmapijanist |
| body | #### What Will I Learn? - Installing Kotlin Plugin on Android Studio - Configure Your Project to Use Kotlin - Convert Java Files to Kotlin - Understanding Kotlin Syntax - Creating Extra Kotlin Files #### Requirements - App Android Studio - Must have an understanding of the kotlin #### Difficulty - Basic #### Tutorial Contents Installing Kotlin Plugin on Android Studio The first thing you need to do is to add Kotlin support to your Android Studio installation. Before you begin, make sure you're running the latest version of Android Studio, stable, as you're more likely to encounter bugs with Kotlin plugins in the experimental version of Android Studio. It's also worth opening the SDK Manager and checking whether updates are available for all packages you have installed. Once you are sure that your development environment is up to date, you are ready to install the Kotlin plugin. Launch Android Studio and you'll see a Welcome window in Android Studio - if this window does not appear, close Android Studio completely and relaunch. Give the Configure icon a click, then select Plugins from the next dropdown menu.  Click the Install JetBrains plugin ... button.  Select Kotlin from the menu, then click the green Install button. You must restart your IDE before the Kotlin plugin becomes active, so click the Restart Android Studio button that appears or restart your IDE manually. ##### Configure Your Project to Use Kotlin At this point, your IDE can understand and run the Kotlin code, but you still need to configure Kotlin every time you use it on a new project. Let's create a new project and configure the project to use Kotlin now. Create a new project with your preferred settings, but for simplicity's sake, choose Empty Activity when prompted. Thanks to the Kotlin plugin, configuring the project to use Kotlin could not be simpler: just select Tools from the Android Studio toolbar, followed by Kotlin and Configure Kotlin in Project.  This will open a popup where you can choose to configure Kotlin to: - all modules - all modules containing Kotlin files - or a named module Since I will only use Kotlin code in my project, I choose All modules. You can also choose which version of Kotlin you want to use-usually, this will be the latest version. Or, you can configure Kotlin by selecting Help from the Android Studio menu bar, followed by Find Action ... In the Find Action bar, start typing Kotlin Configuration in Project, then select this option when it appears. The Configuration Kotlin in Project selection makes a number of tweaks to your project's build.gradle file, so let's take a closer look at how these files have changed. Open your project-level build.gradle file - it should look like this:  Now, let's look at your module-level build.gradle file:  Finally, sync your changes by clicking Sync Now from the popup that appears or by clicking the Sync Project with Gradle Files icon on the Android Studio toolbar. Convert Java Files to Kotlin One Kotlin plugin feature that is particularly useful for Kotlin's newcomers is its ability to convert Java source files to Kotlin, while maintaining full runtime compatibility. Being able to see exactly how each Java file will be translated into Kotlin is ideal to help you learn the language, but it can also come in handy throughout your Kotlin trip- if you ever struggle to figure out how to write something in Kotlin, you can always write it in Java and then use this feature to convert that code into Kotlin. Let's convert our MainActivity project file into Kotlin source file. There are two ways to introduce Kotlin's Convert Java File plugin to Kotlin action file, so: - Select your MainActivity file and select Code from the Android Studio menu bar, followed by Convert Java File to Kotlin File.  - Or choose Help from the Android Studio menu bar, followed by Find Action. In the next popup, start typing Convert Java file to Kotlin file and then select this option when it appears. Note that you can also launch Find Action popups with keyboard shortcuts: if you're using a Mac, press the Command-Shift-A key, and if you're using Windows or Linux, press Control-Shift-A. Know that, depending on the complexity of your code, conversions may not always be 100% accurate, so you should always check the conversion code for errors. Your newly converted MainActivity will look like this:  You'll also notice that the file extension has changed, changing from *MainActivity.java* to *MainActivity.kt.* It may be simple Activity, but some of these lines illustrate some of the key characteristics of Kotlin syntax. Since this is our first look at some of the actual Kotlin codes, let's select this class separately line by line. ##### Understanding Kotlin Syntax In Kotlin, you declare the class by using the keyword class, just like in Java. However, in Kotlin, classes (and methods) are public and final by default, so you can create a class just by writing the Class MainActivity. When it comes to expanding the class, you replace Java extends with a colon, and then attach the parent class name. So, in the first line of our MainActivity.kt file, we create a public end class called MainActivity that extends: AppCompatActivity  Java equivalents are:  If you want to replace a class or method, then you must explicitly declare it as open or abstract. In Kotlin, functions are defined using keywords  , followed by function names and parameters in brackets. In Kotlin, the name of the function exists before its kind:  This is the opposite of Java, where type comes before the name:  Note that we do not specify that this method is final, as in Kotlin all methods are final by default. The rest of this activity looks very similar to Java. However, some of these lines illustrate other key characteristics of Kotlin:  In Kotlin you do not need to finish your sentence with a semicolon, then there is no colon in the above snippet. You can add a colon if you really want to, but your code will be cleaner and easier to read without them. Now that we've parsed our MainActivity.kt file, let's move it to the proper home. Since Kotlin plugin has trouble adding the src / main / kotlin declaration to our build.gradle file, let's actually create this directory. This step is not mandatory, but retaining your Kotlin file in a special directory will make the project cleaner. In Android Studio Project Explorer, Control-click your Project's main directory and select New from the menu that appears, followed by Directory. Name this directory kotlin then click OK.  If you are struggling to see the main directory of your project, open a small dropdown at the top left of Project Explorer and select Project. You should have no problems viewing the elusive src / main directory.  After you create a special Kotlin directory, drag your MainActivity.kt file into it. Be sure to retain the name of your existing MainActivity.kt package to keep your project running. Also, if you're just going to use Kotlin in this project, you might want to remove the Java directory, rather than messing up your project with empty and unnecessary directories. Because Kotlin compiles for bytecode, the app written in Kotlin feels exactly the same as the app written in Java, so try installing this app on your compatible Android device or AVD - it should feel as if nothing has changed. ##### Creating Extra Kotlin Files If you continue to work with Kotlin in your project, then sooner or later you will need to start creating a new Kotlin file instead of changing the one in Java. To create a Kotlin file, Control-click your / src / main / Kotlin application directory and choose New> Kotlin Activity.  Give your class a name and select a class from the drop-down menu. Your new class will look like this:  At this point, your activity is empty. To get to the point where you can start adding some real functionality, you need to complete a few steps. First, add  statement you want to use. The only difference between the import statements in Kotlin and the import statements in Java is that you do not need to complete each row with a semicolon. As an example:  You then have to specify the class that you extend, using the same format as we see in our **MainActivity.kt** file:  Next, you need to change the Activity method   Now you can add any functionality you want to this Activity (and in the next section, I'll show you how to use Kotlin extensions to manipulate UI widgets, so this might be a good place to start), but one final set up you need to finish is declare Your Kotlin Activity in your **Manifest**. It follows exactly the same formula by declaring a new Java Activity, for example:  ##### Kotlin Android Extension: Welcome to Wave  Now that we've mastered the basics, let's take a closer look at what Kotlin really can do-start with features that can really reduce the amount of boilerplate code you need to write. On Android, every time you want to work with anything  in an Activity you need to use  method to get a reference to that View. This makes  one of the most important, but also one of the most frustrating bits of code that you will find yourself writing over and over, and more so in your Android project. The  method is a huge source of potential bugs, and if you work with some UI elements in the same Activity, then everyone s can really mess up your code, making it difficult to read. Although there are a number of libraries, such as Butter Knife, which aims to remove the need for  s, this library still asks you to note on the fields for each Display, which can cause errors and still feel like a lot of effort will be done. better invested in other areas of your project. Kotlin Kotlin Android plugin (which has just been incorporated into the standard Kotlin plugin) promises to make something of the past, offers the benefits of the above libraries without lack of having to write additional code or send an extra runtime. You can use Kotlin extension to import eference to your source file. At this point, the Kotlin plugin will create a set of "synthetic properties" that let you work with this view as if they are part of your activity-most importantly, it means you no longer have to use it  to find each onebefore you can work with me t. To use the extension, you must enable Kotlin Android Extensions plugins in each module, so go to your module **build.gradle** level file and add the following:  Sync these changes by clicking on **Sync Now**. You can then import a reference to one , using the following format:  For example, if your **activity_main.xml** file contains an ID, then you will import a reference to this view by adding the following to:  You can then access this activity by using its own ID-and without vision! Let's look at the extension in action, by adding  to our **activity_main.xml** file, import it into our **MainActivity.kt** file, and use the extension to programmatically set program text. Start by getting you:  You can then import it to **MainActivity.kt**you say, and specify text only with ID:  Note, if you want to work with multiple widgets from the same layout file, you can import the entire contents of the layout files in one motion, using the following formula:  For example, if you want to import all the widgets from your activity_main.xml file then you will add the following to your Activity:  ### Curriculum This is my first contribution <br /><hr/><em>Posted on <a href="https://utopian.io/utopian-io/@irmapijanist/coding-the-functional-android-app-in-kotlin-get-started">Utopian.io - Rewarding Open Source Contributors</a></em><hr/> |
| json metadata | {"community":"utopian","app":"utopian/1.0.0","format":"markdown","repository":{"id":3432266,"name":"kotlin","full_name":"JetBrains/kotlin","html_url":"https://github.com/JetBrains/kotlin","fork":false,"owner":{"login":"JetBrains"}},"pullRequests":[],"platform":"github","type":"tutorials","tags":["utopian-io","utopian-io","tutorial","opensource"],"links":["https://res.cloudinary.com/hpiynhbhq/image/upload/v1521628568/q63shxdrldnoghxri0t6.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521628704/z0gdrfbwczh7c10l5v8p.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521628936/aruqkgot3ncwssuhvcr2.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629014/xkmikscsrglfg65i2xkl.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629121/icp5ilopramylxsxy3c7.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629220/u941xs23w8eoi3uym5vi.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629335/swci4ddrwituc3emqni4.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629727/xfmyfdtjlcfoyea74zlo.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629791/lnvv93uizmrhqbjhnhxq.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629877/muklqm1clips0l2b5oqf.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629939/i82igw7tviqgs5g0dpin.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629967/oxiew6ccdei5itxdbbvr.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630041/rewtfztgua0xolsrrohj.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630094/grlnnoy9eeclkkmxxkur.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630146/exoowstlsdgxj1nk6ing.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630216/gmrpa9a0veitk18bb0ye.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630297/bxkckhrzdlja8zs3ed3u.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630355/oorgqmvghmzx3zzqyoux.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630411/k3o77t9j5ccrkhq0q5ub.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630488/gaggl1jde5c0mctadjph.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630536/sxie5oxqqlxiviw9eyqa.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630582/ngujsrp5szxsmsodowao.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630822/pq0kv6ikj7bnchpkv7yg.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630888/kunpn1hc4h88ur0yhxyo.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630958/hfsp17rkhopr6kuxlady.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631010/e4cpllyy1pdmedtej6fl.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631045/hjnmzlx7ujl64emwueej.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631087/llrbhhpjsilinde3jzpd.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631121/uj63qij4nj8mgyemhbcn.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631172/vt1ag8owndawqtgkcj4o.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631215/j3czjchhfsovba6hvsl1.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631259/zfs7jvfnght69234izqb.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631293/n8z2k8goeqfl9t0ampwy.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631329/k7jemdksxx5pral2shhv.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631424/rcsfpnrwtppjxpifklzq.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631502/fju1bncj0r4oxxtwna1n.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631549/ahdowq4nwv6w09lkc8ac.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631627/hyryod1rvjipyxldte8r.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631658/ohdjpcew4jy58oaidgon.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631720/poh6egr4lbrbuw1iuvjh.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631757/kyxidrtrwuyjfobszqsi.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631981/lyhy9lrz6g8t650dkefj.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632017/zqewcnwi2u1ztmyqwosl.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632143/fpbdv5cexteubg6rh8zo.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632172/ec0fsowevobu9apgliyf.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632204/j9sg3gkarxtcxopho1su.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632278/ic9u2ksp0mioesbfb7f7.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632323/wgzo6sqeiebpc6tctgbm.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632430/fdbbvif4xqushrsfijpd.png"],"image":["https://res.cloudinary.com/hpiynhbhq/image/upload/v1521628568/q63shxdrldnoghxri0t6.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521628704/z0gdrfbwczh7c10l5v8p.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521628936/aruqkgot3ncwssuhvcr2.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629014/xkmikscsrglfg65i2xkl.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629121/icp5ilopramylxsxy3c7.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629220/u941xs23w8eoi3uym5vi.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629335/swci4ddrwituc3emqni4.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629727/xfmyfdtjlcfoyea74zlo.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629791/lnvv93uizmrhqbjhnhxq.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629877/muklqm1clips0l2b5oqf.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629939/i82igw7tviqgs5g0dpin.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629967/oxiew6ccdei5itxdbbvr.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630041/rewtfztgua0xolsrrohj.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630094/grlnnoy9eeclkkmxxkur.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630146/exoowstlsdgxj1nk6ing.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630216/gmrpa9a0veitk18bb0ye.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630297/bxkckhrzdlja8zs3ed3u.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630355/oorgqmvghmzx3zzqyoux.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630411/k3o77t9j5ccrkhq0q5ub.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630488/gaggl1jde5c0mctadjph.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630536/sxie5oxqqlxiviw9eyqa.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630582/ngujsrp5szxsmsodowao.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630822/pq0kv6ikj7bnchpkv7yg.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630888/kunpn1hc4h88ur0yhxyo.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630958/hfsp17rkhopr6kuxlady.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631010/e4cpllyy1pdmedtej6fl.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631045/hjnmzlx7ujl64emwueej.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631087/llrbhhpjsilinde3jzpd.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631121/uj63qij4nj8mgyemhbcn.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631172/vt1ag8owndawqtgkcj4o.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631215/j3czjchhfsovba6hvsl1.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631259/zfs7jvfnght69234izqb.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631293/n8z2k8goeqfl9t0ampwy.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631329/k7jemdksxx5pral2shhv.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631424/rcsfpnrwtppjxpifklzq.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631502/fju1bncj0r4oxxtwna1n.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631549/ahdowq4nwv6w09lkc8ac.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631627/hyryod1rvjipyxldte8r.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631658/ohdjpcew4jy58oaidgon.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631720/poh6egr4lbrbuw1iuvjh.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631757/kyxidrtrwuyjfobszqsi.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631981/lyhy9lrz6g8t650dkefj.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632017/zqewcnwi2u1ztmyqwosl.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632143/fpbdv5cexteubg6rh8zo.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632172/ec0fsowevobu9apgliyf.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632204/j9sg3gkarxtcxopho1su.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632278/ic9u2ksp0mioesbfb7f7.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632323/wgzo6sqeiebpc6tctgbm.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632430/fdbbvif4xqushrsfijpd.png"],"moderator":{"account":"sdtyldz","time":"2018-03-21T17:17:44.574Z","flagged":true,"reviewed":false,"pending":false},"questions":[],"score":null} |
| parent author | |
| parent permlink | utopian-io |
| permlink | coding-the-functional-android-app-in-kotlin-get-started |
| title | Coding the Functional Android App in Kotlin: Get started |
| Transaction Info | Block #20874794/Trx 16e7ee8f769e1e1622170dbc18cc2cc3c1c5d91d |
View Raw JSON Data
{
"block": 20874794,
"op": [
"comment",
{
"author": "irmapijanist",
"body": "\n#### What Will I Learn?\n\n- Installing Kotlin Plugin on Android Studio\n- Configure Your Project to Use Kotlin\n- Convert Java Files to Kotlin\n- Understanding Kotlin Syntax\n- Creating Extra Kotlin Files\n\n#### Requirements\n\n- App Android Studio\n- Must have an understanding of the kotlin\n\n#### Difficulty\n\n- Basic\n\n#### Tutorial Contents\nInstalling Kotlin Plugin on Android Studio\n\nThe first thing you need to do is to add Kotlin support to your Android Studio installation.\n\nBefore you begin, make sure you're running the latest version of Android Studio, stable, as you're more likely to encounter bugs with Kotlin plugins in the experimental version of Android Studio. It's also worth opening the SDK Manager and checking whether updates are available for all packages you have installed.\nOnce you are sure that your development environment is up to date, you are ready to install the Kotlin plugin. Launch Android Studio and you'll see a Welcome window in Android Studio - if this window does not appear, close Android Studio completely and relaunch.\nGive the Configure icon a click, then select Plugins from the next dropdown menu.\n\n\nClick the Install JetBrains plugin ... button.\n\n\n\nSelect Kotlin from the menu, then click the green Install button. You must restart your IDE before the Kotlin plugin becomes active, so click the Restart Android Studio button that appears or restart your IDE manually.\n\n##### Configure Your Project to Use Kotlin\nAt this point, your IDE can understand and run the Kotlin code, but you still need to configure Kotlin every time you use it on a new project. Let's create a new project and configure the project to use Kotlin now. Create a new project with your preferred settings, but for simplicity's sake, choose Empty Activity when prompted.\n\nThanks to the Kotlin plugin, configuring the project to use Kotlin could not be simpler: just select Tools from the Android Studio toolbar, followed by Kotlin and Configure Kotlin in Project.\n\n\n\nThis will open a popup where you can choose to configure Kotlin to:\n\n- all modules\n- all modules containing Kotlin files\n- or a named module\nSince I will only use Kotlin code in my project, I choose All modules. You can also choose which version of Kotlin you want to use-usually, this will be the latest version.\n\nOr, you can configure Kotlin by selecting Help from the Android Studio menu bar, followed by Find Action ... In the Find Action bar, start typing Kotlin Configuration in Project, then select this option when it appears.\n\nThe Configuration Kotlin in Project selection makes a number of tweaks to your project's build.gradle file, so let's take a closer look at how these files have changed. Open your project-level build.gradle file - it should look like this:\n\n\n\nNow, let's look at your module-level build.gradle file:\n\n\nFinally, sync your changes by clicking Sync Now from the popup that appears or by clicking the Sync Project with Gradle Files icon on the Android Studio toolbar.\n\nConvert Java Files to Kotlin\nOne Kotlin plugin feature that is particularly useful for Kotlin's newcomers is its ability to convert Java source files to Kotlin, while maintaining full runtime compatibility.\n\nBeing able to see exactly how each Java file will be translated into Kotlin is ideal to help you learn the language, but it can also come in handy throughout your Kotlin trip- if you ever struggle to figure out how to write something in Kotlin, you can always write it in Java and then use this feature to convert that code into Kotlin.\n\nLet's convert our MainActivity project file into Kotlin source file. There are two ways to introduce Kotlin's Convert Java File plugin to Kotlin action file, so:\n\n- Select your MainActivity file and select Code from the Android Studio menu bar, followed by Convert Java File to Kotlin File.\n\n\n\n- Or choose Help from the Android Studio menu bar, followed by Find Action. In the next popup, start typing Convert Java file to Kotlin file and then select this option when it appears. Note that you can also launch Find Action popups with keyboard shortcuts: if you're using a Mac, press the Command-Shift-A key, and if you're using Windows or Linux, press Control-Shift-A.\n\nKnow that, depending on the complexity of your code, conversions may not always be 100% accurate, so you should always check the conversion code for errors.\n\nYour newly converted MainActivity will look like this:\n\n\nYou'll also notice that the file extension has changed, changing from *MainActivity.java* to *MainActivity.kt.*\n\nIt may be simple Activity, but some of these lines illustrate some of the key characteristics of Kotlin syntax. Since this is our first look at some of the actual Kotlin codes, let's select this class separately line by line.\n\n##### Understanding Kotlin Syntax\nIn Kotlin, you declare the class by using the keyword class, just like in Java. However, in Kotlin, classes (and methods) are public and final by default, so you can create a class just by writing the Class MainActivity.\n\nWhen it comes to expanding the class, you replace Java extends with a colon, and then attach the parent class name. So, in the first line of our MainActivity.kt file, we create a public end class called MainActivity that extends: AppCompatActivity\n\n\nJava equivalents are:\n\n\nIf you want to replace a class or method, then you must explicitly declare it as open or abstract.\n\nIn Kotlin, functions are defined using keywords \n, followed by function names and parameters in brackets. In Kotlin, the name of the function exists before its kind:\n\n\nThis is the opposite of Java, where type comes before the name:\n\n\nNote that we do not specify that this method is final, as in Kotlin all methods are final by default.\n\nThe rest of this activity looks very similar to Java. However, some of these lines illustrate other key characteristics of Kotlin:\n\n\nIn Kotlin you do not need to finish your sentence with a semicolon, then there is no colon in the above snippet. You can add a colon if you really want to, but your code will be cleaner and easier to read without them.\n\nNow that we've parsed our MainActivity.kt file, let's move it to the proper home. Since Kotlin plugin has trouble adding the src / main / kotlin declaration to our build.gradle file, let's actually create this directory. This step is not mandatory, but retaining your Kotlin file in a special directory will make the project cleaner.\n\nIn Android Studio Project Explorer, Control-click your Project's main directory and select New from the menu that appears, followed by Directory. Name this directory kotlin then click OK.\n\n\n\nIf you are struggling to see the main directory of your project, open a small dropdown at the top left of Project Explorer and select Project. You should have no problems viewing the elusive src / main directory.\n\n\nAfter you create a special Kotlin directory, drag your MainActivity.kt file into it. Be sure to retain the name of your existing MainActivity.kt package to keep your project running.\n\nAlso, if you're just going to use Kotlin in this project, you might want to remove the Java directory, rather than messing up your project with empty and unnecessary directories.\n\nBecause Kotlin compiles for bytecode, the app written in Kotlin feels exactly the same as the app written in Java, so try installing this app on your compatible Android device or AVD - it should feel as if nothing has changed.\n\n##### Creating Extra Kotlin Files\nIf you continue to work with Kotlin in your project, then sooner or later you will need to start creating a new Kotlin file instead of changing the one in Java.\nTo create a Kotlin file, Control-click your / src / main / Kotlin application directory and choose New> Kotlin Activity.\n\n\nGive your class a name and select a class from the drop-down menu. Your new class will look like this:\n\n\n\nAt this point, your activity is empty. To get to the point where you can start adding some real functionality, you need to complete a few steps. First, add  statement you want to use. The only difference between the import statements in Kotlin and the import statements in Java is that you do not need to complete each row with a semicolon. As an example:\n\n\nYou then have to specify the class that you extend, using the same format as we see in our **MainActivity.kt** file:\n\n\nNext, you need to change the Activity method \n\n\n\nNow you can add any functionality you want to this Activity (and in the next section, I'll show you how to use Kotlin extensions to manipulate UI widgets, so this might be a good place to start), but one final set up you need to finish is declare Your Kotlin Activity in your **Manifest**. It follows exactly the same formula by declaring a new Java Activity, for example:\n\n\n\n##### Kotlin Android Extension: Welcome to Wave \n\nNow that we've mastered the basics, let's take a closer look at what Kotlin really can do-start with features that can really reduce the amount of boilerplate code you need to write.\n\nOn Android, every time you want to work with anything  in an Activity you need to use  method to get a reference to that View. This makes  one of the most important, but also one of the most frustrating bits of code that you will find yourself writing over and over, and more so in your Android project. The  method is a huge source of potential bugs, and if you work with some UI elements in the same Activity, then everyone s can really mess up your code, making it difficult to read.\n\nAlthough there are a number of libraries, such as Butter Knife, which aims to remove the need for  s, this library still asks you to note on the fields for each Display, which can cause errors and still feel like a lot of effort will be done. better invested in other areas of your project.\nKotlin Kotlin Android plugin (which has just been incorporated into the standard Kotlin plugin) promises to make something of the past, offers the benefits of the above libraries without lack of having to write additional code or send an extra runtime.\n\nYou can use Kotlin extension to import eference to your source file. At this point, the Kotlin plugin will create a set of \"synthetic properties\" that let you work with this view as if they are part of your activity-most importantly, it means you no longer have to use it  to find each onebefore you can work with me t.\nTo use the extension, you must enable Kotlin Android Extensions plugins in each module, so go to your module **build.gradle** level file and add the following:\n\nSync these changes by clicking on **Sync Now**.\n\nYou can then import a reference to one , using the following format:\n\n\nFor example, if your **activity_main.xml** file contains an ID, then you will import a reference to this view by adding the following to:\n\n\nYou can then access this activity by using its own ID-and without vision!\nLet's look at the extension in action, by adding \n\nto our **activity_main.xml** file, import it into our **MainActivity.kt** file, and use the extension to programmatically set program text.\n\nStart by getting you:\n\n\nYou can then import it to **MainActivity.kt**you say, and specify text only with ID:\n\nNote, if you want to work with multiple widgets from the same layout file, you can import the entire contents of the layout files in one motion, using the following formula:\n\n\nFor example, if you want to import all the widgets from your activity_main.xml file then you will add the following to your Activity:\n\n\n\n\n### Curriculum\nThis is my first contribution\n\n<br /><hr/><em>Posted on <a href=\"https://utopian.io/utopian-io/@irmapijanist/coding-the-functional-android-app-in-kotlin-get-started\">Utopian.io - Rewarding Open Source Contributors</a></em><hr/>",
"json_metadata": "{\"community\":\"utopian\",\"app\":\"utopian/1.0.0\",\"format\":\"markdown\",\"repository\":{\"id\":3432266,\"name\":\"kotlin\",\"full_name\":\"JetBrains/kotlin\",\"html_url\":\"https://github.com/JetBrains/kotlin\",\"fork\":false,\"owner\":{\"login\":\"JetBrains\"}},\"pullRequests\":[],\"platform\":\"github\",\"type\":\"tutorials\",\"tags\":[\"utopian-io\",\"utopian-io\",\"tutorial\",\"opensource\"],\"links\":[\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521628568/q63shxdrldnoghxri0t6.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521628704/z0gdrfbwczh7c10l5v8p.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521628936/aruqkgot3ncwssuhvcr2.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629014/xkmikscsrglfg65i2xkl.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629121/icp5ilopramylxsxy3c7.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629220/u941xs23w8eoi3uym5vi.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629335/swci4ddrwituc3emqni4.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629727/xfmyfdtjlcfoyea74zlo.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629791/lnvv93uizmrhqbjhnhxq.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629877/muklqm1clips0l2b5oqf.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629939/i82igw7tviqgs5g0dpin.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629967/oxiew6ccdei5itxdbbvr.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630041/rewtfztgua0xolsrrohj.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630094/grlnnoy9eeclkkmxxkur.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630146/exoowstlsdgxj1nk6ing.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630216/gmrpa9a0veitk18bb0ye.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630297/bxkckhrzdlja8zs3ed3u.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630355/oorgqmvghmzx3zzqyoux.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630411/k3o77t9j5ccrkhq0q5ub.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630488/gaggl1jde5c0mctadjph.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630536/sxie5oxqqlxiviw9eyqa.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630582/ngujsrp5szxsmsodowao.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630822/pq0kv6ikj7bnchpkv7yg.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630888/kunpn1hc4h88ur0yhxyo.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630958/hfsp17rkhopr6kuxlady.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631010/e4cpllyy1pdmedtej6fl.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631045/hjnmzlx7ujl64emwueej.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631087/llrbhhpjsilinde3jzpd.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631121/uj63qij4nj8mgyemhbcn.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631172/vt1ag8owndawqtgkcj4o.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631215/j3czjchhfsovba6hvsl1.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631259/zfs7jvfnght69234izqb.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631293/n8z2k8goeqfl9t0ampwy.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631329/k7jemdksxx5pral2shhv.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631424/rcsfpnrwtppjxpifklzq.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631502/fju1bncj0r4oxxtwna1n.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631549/ahdowq4nwv6w09lkc8ac.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631627/hyryod1rvjipyxldte8r.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631658/ohdjpcew4jy58oaidgon.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631720/poh6egr4lbrbuw1iuvjh.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631757/kyxidrtrwuyjfobszqsi.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631981/lyhy9lrz6g8t650dkefj.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632017/zqewcnwi2u1ztmyqwosl.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632143/fpbdv5cexteubg6rh8zo.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632172/ec0fsowevobu9apgliyf.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632204/j9sg3gkarxtcxopho1su.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632278/ic9u2ksp0mioesbfb7f7.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632323/wgzo6sqeiebpc6tctgbm.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632430/fdbbvif4xqushrsfijpd.png\"],\"image\":[\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521628568/q63shxdrldnoghxri0t6.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521628704/z0gdrfbwczh7c10l5v8p.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521628936/aruqkgot3ncwssuhvcr2.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629014/xkmikscsrglfg65i2xkl.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629121/icp5ilopramylxsxy3c7.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629220/u941xs23w8eoi3uym5vi.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629335/swci4ddrwituc3emqni4.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629727/xfmyfdtjlcfoyea74zlo.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629791/lnvv93uizmrhqbjhnhxq.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629877/muklqm1clips0l2b5oqf.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629939/i82igw7tviqgs5g0dpin.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629967/oxiew6ccdei5itxdbbvr.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630041/rewtfztgua0xolsrrohj.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630094/grlnnoy9eeclkkmxxkur.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630146/exoowstlsdgxj1nk6ing.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630216/gmrpa9a0veitk18bb0ye.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630297/bxkckhrzdlja8zs3ed3u.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630355/oorgqmvghmzx3zzqyoux.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630411/k3o77t9j5ccrkhq0q5ub.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630488/gaggl1jde5c0mctadjph.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630536/sxie5oxqqlxiviw9eyqa.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630582/ngujsrp5szxsmsodowao.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630822/pq0kv6ikj7bnchpkv7yg.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630888/kunpn1hc4h88ur0yhxyo.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630958/hfsp17rkhopr6kuxlady.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631010/e4cpllyy1pdmedtej6fl.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631045/hjnmzlx7ujl64emwueej.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631087/llrbhhpjsilinde3jzpd.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631121/uj63qij4nj8mgyemhbcn.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631172/vt1ag8owndawqtgkcj4o.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631215/j3czjchhfsovba6hvsl1.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631259/zfs7jvfnght69234izqb.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631293/n8z2k8goeqfl9t0ampwy.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631329/k7jemdksxx5pral2shhv.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631424/rcsfpnrwtppjxpifklzq.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631502/fju1bncj0r4oxxtwna1n.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631549/ahdowq4nwv6w09lkc8ac.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631627/hyryod1rvjipyxldte8r.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631658/ohdjpcew4jy58oaidgon.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631720/poh6egr4lbrbuw1iuvjh.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631757/kyxidrtrwuyjfobszqsi.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631981/lyhy9lrz6g8t650dkefj.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632017/zqewcnwi2u1ztmyqwosl.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632143/fpbdv5cexteubg6rh8zo.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632172/ec0fsowevobu9apgliyf.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632204/j9sg3gkarxtcxopho1su.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632278/ic9u2ksp0mioesbfb7f7.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632323/wgzo6sqeiebpc6tctgbm.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632430/fdbbvif4xqushrsfijpd.png\"],\"moderator\":{\"account\":\"sdtyldz\",\"time\":\"2018-03-21T17:17:44.574Z\",\"flagged\":true,\"reviewed\":false,\"pending\":false},\"questions\":[],\"score\":null}",
"parent_author": "",
"parent_permlink": "utopian-io",
"permlink": "coding-the-functional-android-app-in-kotlin-get-started",
"title": "Coding the Functional Android App in Kotlin: Get started"
}
],
"op_in_trx": 0,
"timestamp": "2018-03-21T17:17:45",
"trx_id": "16e7ee8f769e1e1622170dbc18cc2cc3c1c5d91d",
"trx_in_block": 56,
"virtual_op": 0
}sensationupvoted (100.00%) @irmapijanist / coding-the-functional-android-app-in-kotlin-get-started2018/03/21 12:52:24
sensationupvoted (100.00%) @irmapijanist / coding-the-functional-android-app-in-kotlin-get-started
2018/03/21 12:52:24
| author | irmapijanist |
| permlink | coding-the-functional-android-app-in-kotlin-get-started |
| voter | sensation |
| weight | 10000 (100.00%) |
| Transaction Info | Block #20869508/Trx 8730dd1010154d15de29d5b7299f61699d389fd8 |
View Raw JSON Data
{
"block": 20869508,
"op": [
"vote",
{
"author": "irmapijanist",
"permlink": "coding-the-functional-android-app-in-kotlin-get-started",
"voter": "sensation",
"weight": 10000
}
],
"op_in_trx": 0,
"timestamp": "2018-03-21T12:52:24",
"trx_id": "8730dd1010154d15de29d5b7299f61699d389fd8",
"trx_in_block": 13,
"virtual_op": 0
}2018/03/21 11:46:24
2018/03/21 11:46:24
| author | cheetah |
| body | Hi! I am a robot. I just upvoted you! I found similar content that readers might be interested in: https://code.tutsplus.com/tutorials/start-developing-android-apps-with-kotlin-part-1--cms-27827 |
| json metadata | |
| parent author | irmapijanist |
| parent permlink | coding-the-functional-android-app-in-kotlin-get-started |
| permlink | cheetah-re-irmapijanistcoding-the-functional-android-app-in-kotlin-get-started |
| title | |
| Transaction Info | Block #20868239/Trx df1dd0ea909dc2fbf49db9b270873c92ba8b47a6 |
View Raw JSON Data
{
"block": 20868239,
"op": [
"comment",
{
"author": "cheetah",
"body": "Hi! I am a robot. I just upvoted you! I found similar content that readers might be interested in:\nhttps://code.tutsplus.com/tutorials/start-developing-android-apps-with-kotlin-part-1--cms-27827",
"json_metadata": "",
"parent_author": "irmapijanist",
"parent_permlink": "coding-the-functional-android-app-in-kotlin-get-started",
"permlink": "cheetah-re-irmapijanistcoding-the-functional-android-app-in-kotlin-get-started",
"title": ""
}
],
"op_in_trx": 0,
"timestamp": "2018-03-21T11:46:24",
"trx_id": "df1dd0ea909dc2fbf49db9b270873c92ba8b47a6",
"trx_in_block": 35,
"virtual_op": 0
}cheetahupvoted (0.08%) @irmapijanist / coding-the-functional-android-app-in-kotlin-get-started2018/03/21 11:46:18
cheetahupvoted (0.08%) @irmapijanist / coding-the-functional-android-app-in-kotlin-get-started
2018/03/21 11:46:18
| author | irmapijanist |
| permlink | coding-the-functional-android-app-in-kotlin-get-started |
| voter | cheetah |
| weight | 8 (0.08%) |
| Transaction Info | Block #20868237/Trx cbe3829a35b55fa3f3da187ebf52dc49298491ca |
View Raw JSON Data
{
"block": 20868237,
"op": [
"vote",
{
"author": "irmapijanist",
"permlink": "coding-the-functional-android-app-in-kotlin-get-started",
"voter": "cheetah",
"weight": 8
}
],
"op_in_trx": 0,
"timestamp": "2018-03-21T11:46:18",
"trx_id": "cbe3829a35b55fa3f3da187ebf52dc49298491ca",
"trx_in_block": 46,
"virtual_op": 0
}irmapijanistupdated options for coding-the-functional-android-app-in-kotlin-get-started2018/03/21 11:46:00
irmapijanistupdated options for coding-the-functional-android-app-in-kotlin-get-started
2018/03/21 11:46:00
| allow curation rewards | true |
| allow votes | true |
| author | irmapijanist |
| extensions | [[0,{"beneficiaries":[{"account":"utopian.pay","weight":2500}]}]] |
| max accepted payout | 1000000.000 SBD |
| percent steem dollars | 10000 |
| permlink | coding-the-functional-android-app-in-kotlin-get-started |
| Transaction Info | Block #20868231/Trx 8a026cd6021be96715695321e43879e7649c75b4 |
View Raw JSON Data
{
"block": 20868231,
"op": [
"comment_options",
{
"allow_curation_rewards": true,
"allow_votes": true,
"author": "irmapijanist",
"extensions": [
[
0,
{
"beneficiaries": [
{
"account": "utopian.pay",
"weight": 2500
}
]
}
]
],
"max_accepted_payout": "1000000.000 SBD",
"percent_steem_dollars": 10000,
"permlink": "coding-the-functional-android-app-in-kotlin-get-started"
}
],
"op_in_trx": 0,
"timestamp": "2018-03-21T11:46:00",
"trx_id": "8a026cd6021be96715695321e43879e7649c75b4",
"trx_in_block": 26,
"virtual_op": 0
}irmapijanistpublished a new post: coding-the-functional-android-app-in-kotlin-get-started2018/03/21 11:46:00
irmapijanistpublished a new post: coding-the-functional-android-app-in-kotlin-get-started
2018/03/21 11:46:00
| author | irmapijanist |
| body | #### What Will I Learn? - Installing Kotlin Plugin on Android Studio - Configure Your Project to Use Kotlin - Convert Java Files to Kotlin - Understanding Kotlin Syntax - Creating Extra Kotlin Files #### Requirements - App Android Studio - Must have an understanding of the kotlin #### Difficulty - Basic #### Tutorial Contents Installing Kotlin Plugin on Android Studio The first thing you need to do is to add Kotlin support to your Android Studio installation. Before you begin, make sure you're running the latest version of Android Studio, stable, as you're more likely to encounter bugs with Kotlin plugins in the experimental version of Android Studio. It's also worth opening the SDK Manager and checking whether updates are available for all packages you have installed. Once you are sure that your development environment is up to date, you are ready to install the Kotlin plugin. Launch Android Studio and you'll see a Welcome window in Android Studio - if this window does not appear, close Android Studio completely and relaunch. Give the Configure icon a click, then select Plugins from the next dropdown menu.  Click the Install JetBrains plugin ... button.  Select Kotlin from the menu, then click the green Install button. You must restart your IDE before the Kotlin plugin becomes active, so click the Restart Android Studio button that appears or restart your IDE manually. ##### Configure Your Project to Use Kotlin At this point, your IDE can understand and run the Kotlin code, but you still need to configure Kotlin every time you use it on a new project. Let's create a new project and configure the project to use Kotlin now. Create a new project with your preferred settings, but for simplicity's sake, choose Empty Activity when prompted. Thanks to the Kotlin plugin, configuring the project to use Kotlin could not be simpler: just select Tools from the Android Studio toolbar, followed by Kotlin and Configure Kotlin in Project.  This will open a popup where you can choose to configure Kotlin to: - all modules - all modules containing Kotlin files - or a named module Since I will only use Kotlin code in my project, I choose All modules. You can also choose which version of Kotlin you want to use-usually, this will be the latest version. Or, you can configure Kotlin by selecting Help from the Android Studio menu bar, followed by Find Action ... In the Find Action bar, start typing Kotlin Configuration in Project, then select this option when it appears. The Configuration Kotlin in Project selection makes a number of tweaks to your project's build.gradle file, so let's take a closer look at how these files have changed. Open your project-level build.gradle file - it should look like this:  Now, let's look at your module-level build.gradle file:  Finally, sync your changes by clicking Sync Now from the popup that appears or by clicking the Sync Project with Gradle Files icon on the Android Studio toolbar. Convert Java Files to Kotlin One Kotlin plugin feature that is particularly useful for Kotlin's newcomers is its ability to convert Java source files to Kotlin, while maintaining full runtime compatibility. Being able to see exactly how each Java file will be translated into Kotlin is ideal to help you learn the language, but it can also come in handy throughout your Kotlin trip- if you ever struggle to figure out how to write something in Kotlin, you can always write it in Java and then use this feature to convert that code into Kotlin. Let's convert our MainActivity project file into Kotlin source file. There are two ways to introduce Kotlin's Convert Java File plugin to Kotlin action file, so: - Select your MainActivity file and select Code from the Android Studio menu bar, followed by Convert Java File to Kotlin File.  - Or choose Help from the Android Studio menu bar, followed by Find Action. In the next popup, start typing Convert Java file to Kotlin file and then select this option when it appears. Note that you can also launch Find Action popups with keyboard shortcuts: if you're using a Mac, press the Command-Shift-A key, and if you're using Windows or Linux, press Control-Shift-A. Know that, depending on the complexity of your code, conversions may not always be 100% accurate, so you should always check the conversion code for errors. Your newly converted MainActivity will look like this:  You'll also notice that the file extension has changed, changing from *MainActivity.java* to *MainActivity.kt.* It may be simple Activity, but some of these lines illustrate some of the key characteristics of Kotlin syntax. Since this is our first look at some of the actual Kotlin codes, let's select this class separately line by line. ##### Understanding Kotlin Syntax In Kotlin, you declare the class by using the keyword class, just like in Java. However, in Kotlin, classes (and methods) are public and final by default, so you can create a class just by writing the Class MainActivity. When it comes to expanding the class, you replace Java extends with a colon, and then attach the parent class name. So, in the first line of our MainActivity.kt file, we create a public end class called MainActivity that extends: AppCompatActivity  Java equivalents are:  If you want to replace a class or method, then you must explicitly declare it as open or abstract. In Kotlin, functions are defined using keywords  , followed by function names and parameters in brackets. In Kotlin, the name of the function exists before its kind:  This is the opposite of Java, where type comes before the name:  Note that we do not specify that this method is final, as in Kotlin all methods are final by default. The rest of this activity looks very similar to Java. However, some of these lines illustrate other key characteristics of Kotlin:  In Kotlin you do not need to finish your sentence with a semicolon, then there is no colon in the above snippet. You can add a colon if you really want to, but your code will be cleaner and easier to read without them. Now that we've parsed our MainActivity.kt file, let's move it to the proper home. Since Kotlin plugin has trouble adding the src / main / kotlin declaration to our build.gradle file, let's actually create this directory. This step is not mandatory, but retaining your Kotlin file in a special directory will make the project cleaner. In Android Studio Project Explorer, Control-click your Project's main directory and select New from the menu that appears, followed by Directory. Name this directory kotlin then click OK.  If you are struggling to see the main directory of your project, open a small dropdown at the top left of Project Explorer and select Project. You should have no problems viewing the elusive src / main directory.  After you create a special Kotlin directory, drag your MainActivity.kt file into it. Be sure to retain the name of your existing MainActivity.kt package to keep your project running. Also, if you're just going to use Kotlin in this project, you might want to remove the Java directory, rather than messing up your project with empty and unnecessary directories. Because Kotlin compiles for bytecode, the app written in Kotlin feels exactly the same as the app written in Java, so try installing this app on your compatible Android device or AVD - it should feel as if nothing has changed. ##### Creating Extra Kotlin Files If you continue to work with Kotlin in your project, then sooner or later you will need to start creating a new Kotlin file instead of changing the one in Java. To create a Kotlin file, Control-click your / src / main / Kotlin application directory and choose New> Kotlin Activity.  Give your class a name and select a class from the drop-down menu. Your new class will look like this:  At this point, your activity is empty. To get to the point where you can start adding some real functionality, you need to complete a few steps. First, add  statement you want to use. The only difference between the import statements in Kotlin and the import statements in Java is that you do not need to complete each row with a semicolon. As an example:  You then have to specify the class that you extend, using the same format as we see in our **MainActivity.kt** file:  Next, you need to change the Activity method   Now you can add any functionality you want to this Activity (and in the next section, I'll show you how to use Kotlin extensions to manipulate UI widgets, so this might be a good place to start), but one final set up you need to finish is declare Your Kotlin Activity in your **Manifest**. It follows exactly the same formula by declaring a new Java Activity, for example:  ##### Kotlin Android Extension: Welcome to Wave  Now that we've mastered the basics, let's take a closer look at what Kotlin really can do-start with features that can really reduce the amount of boilerplate code you need to write. On Android, every time you want to work with anything  in an Activity you need to use  method to get a reference to that View. This makes  one of the most important, but also one of the most frustrating bits of code that you will find yourself writing over and over, and more so in your Android project. The  method is a huge source of potential bugs, and if you work with some UI elements in the same Activity, then everyone s can really mess up your code, making it difficult to read. Although there are a number of libraries, such as Butter Knife, which aims to remove the need for  s, this library still asks you to note on the fields for each Display, which can cause errors and still feel like a lot of effort will be done. better invested in other areas of your project. Kotlin Kotlin Android plugin (which has just been incorporated into the standard Kotlin plugin) promises to make something of the past, offers the benefits of the above libraries without lack of having to write additional code or send an extra runtime. You can use Kotlin extension to import eference to your source file. At this point, the Kotlin plugin will create a set of "synthetic properties" that let you work with this view as if they are part of your activity-most importantly, it means you no longer have to use it  to find each onebefore you can work with me t. To use the extension, you must enable Kotlin Android Extensions plugins in each module, so go to your module **build.gradle** level file and add the following:  Sync these changes by clicking on **Sync Now**. You can then import a reference to one , using the following format:  For example, if your **activity_main.xml** file contains an ID, then you will import a reference to this view by adding the following to:  You can then access this activity by using its own ID-and without vision! Let's look at the extension in action, by adding  to our **activity_main.xml** file, import it into our **MainActivity.kt** file, and use the extension to programmatically set program text. Start by getting you:  You can then import it to **MainActivity.kt**you say, and specify text only with ID:  Note, if you want to work with multiple widgets from the same layout file, you can import the entire contents of the layout files in one motion, using the following formula:  For example, if you want to import all the widgets from your activity_main.xml file then you will add the following to your Activity:  ### Curriculum This is my first contribution <br /><hr/><em>Posted on <a href="https://utopian.io/utopian-io/@irmapijanist/coding-the-functional-android-app-in-kotlin-get-started">Utopian.io - Rewarding Open Source Contributors</a></em><hr/> |
| json metadata | {"community":"utopian","app":"utopian/1.0.0","format":"markdown","repository":{"id":3432266,"name":"kotlin","full_name":"JetBrains/kotlin","html_url":"https://github.com/JetBrains/kotlin","fork":false,"owner":{"login":"JetBrains"}},"pullRequests":[],"platform":"github","type":"tutorials","tags":["utopian-io","utopian-io","tutorial","opensource"],"links":["https://res.cloudinary.com/hpiynhbhq/image/upload/v1521628568/q63shxdrldnoghxri0t6.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521628704/z0gdrfbwczh7c10l5v8p.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521628936/aruqkgot3ncwssuhvcr2.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629014/xkmikscsrglfg65i2xkl.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629121/icp5ilopramylxsxy3c7.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629220/u941xs23w8eoi3uym5vi.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629335/swci4ddrwituc3emqni4.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629727/xfmyfdtjlcfoyea74zlo.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629791/lnvv93uizmrhqbjhnhxq.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629877/muklqm1clips0l2b5oqf.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629939/i82igw7tviqgs5g0dpin.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629967/oxiew6ccdei5itxdbbvr.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630041/rewtfztgua0xolsrrohj.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630094/grlnnoy9eeclkkmxxkur.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630146/exoowstlsdgxj1nk6ing.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630216/gmrpa9a0veitk18bb0ye.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630297/bxkckhrzdlja8zs3ed3u.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630355/oorgqmvghmzx3zzqyoux.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630411/k3o77t9j5ccrkhq0q5ub.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630488/gaggl1jde5c0mctadjph.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630536/sxie5oxqqlxiviw9eyqa.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630582/ngujsrp5szxsmsodowao.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630822/pq0kv6ikj7bnchpkv7yg.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630888/kunpn1hc4h88ur0yhxyo.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630958/hfsp17rkhopr6kuxlady.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631010/e4cpllyy1pdmedtej6fl.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631045/hjnmzlx7ujl64emwueej.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631087/llrbhhpjsilinde3jzpd.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631121/uj63qij4nj8mgyemhbcn.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631172/vt1ag8owndawqtgkcj4o.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631215/j3czjchhfsovba6hvsl1.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631259/zfs7jvfnght69234izqb.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631293/n8z2k8goeqfl9t0ampwy.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631329/k7jemdksxx5pral2shhv.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631424/rcsfpnrwtppjxpifklzq.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631502/fju1bncj0r4oxxtwna1n.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631549/ahdowq4nwv6w09lkc8ac.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631627/hyryod1rvjipyxldte8r.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631658/ohdjpcew4jy58oaidgon.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631720/poh6egr4lbrbuw1iuvjh.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631757/kyxidrtrwuyjfobszqsi.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631981/lyhy9lrz6g8t650dkefj.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632017/zqewcnwi2u1ztmyqwosl.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632143/fpbdv5cexteubg6rh8zo.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632172/ec0fsowevobu9apgliyf.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632204/j9sg3gkarxtcxopho1su.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632278/ic9u2ksp0mioesbfb7f7.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632323/wgzo6sqeiebpc6tctgbm.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632430/fdbbvif4xqushrsfijpd.png"],"image":["https://res.cloudinary.com/hpiynhbhq/image/upload/v1521628568/q63shxdrldnoghxri0t6.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521628704/z0gdrfbwczh7c10l5v8p.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521628936/aruqkgot3ncwssuhvcr2.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629014/xkmikscsrglfg65i2xkl.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629121/icp5ilopramylxsxy3c7.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629220/u941xs23w8eoi3uym5vi.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629335/swci4ddrwituc3emqni4.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629727/xfmyfdtjlcfoyea74zlo.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629791/lnvv93uizmrhqbjhnhxq.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629877/muklqm1clips0l2b5oqf.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629939/i82igw7tviqgs5g0dpin.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629967/oxiew6ccdei5itxdbbvr.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630041/rewtfztgua0xolsrrohj.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630094/grlnnoy9eeclkkmxxkur.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630146/exoowstlsdgxj1nk6ing.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630216/gmrpa9a0veitk18bb0ye.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630297/bxkckhrzdlja8zs3ed3u.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630355/oorgqmvghmzx3zzqyoux.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630411/k3o77t9j5ccrkhq0q5ub.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630488/gaggl1jde5c0mctadjph.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630536/sxie5oxqqlxiviw9eyqa.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630582/ngujsrp5szxsmsodowao.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630822/pq0kv6ikj7bnchpkv7yg.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630888/kunpn1hc4h88ur0yhxyo.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630958/hfsp17rkhopr6kuxlady.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631010/e4cpllyy1pdmedtej6fl.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631045/hjnmzlx7ujl64emwueej.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631087/llrbhhpjsilinde3jzpd.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631121/uj63qij4nj8mgyemhbcn.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631172/vt1ag8owndawqtgkcj4o.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631215/j3czjchhfsovba6hvsl1.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631259/zfs7jvfnght69234izqb.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631293/n8z2k8goeqfl9t0ampwy.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631329/k7jemdksxx5pral2shhv.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631424/rcsfpnrwtppjxpifklzq.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631502/fju1bncj0r4oxxtwna1n.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631549/ahdowq4nwv6w09lkc8ac.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631627/hyryod1rvjipyxldte8r.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631658/ohdjpcew4jy58oaidgon.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631720/poh6egr4lbrbuw1iuvjh.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631757/kyxidrtrwuyjfobszqsi.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631981/lyhy9lrz6g8t650dkefj.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632017/zqewcnwi2u1ztmyqwosl.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632143/fpbdv5cexteubg6rh8zo.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632172/ec0fsowevobu9apgliyf.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632204/j9sg3gkarxtcxopho1su.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632278/ic9u2ksp0mioesbfb7f7.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632323/wgzo6sqeiebpc6tctgbm.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632430/fdbbvif4xqushrsfijpd.png"]} |
| parent author | |
| parent permlink | utopian-io |
| permlink | coding-the-functional-android-app-in-kotlin-get-started |
| title | Coding the Functional Android App in Kotlin: Get started |
| Transaction Info | Block #20868231/Trx 8a026cd6021be96715695321e43879e7649c75b4 |
View Raw JSON Data
{
"block": 20868231,
"op": [
"comment",
{
"author": "irmapijanist",
"body": "\n#### What Will I Learn?\n\n- Installing Kotlin Plugin on Android Studio\n- Configure Your Project to Use Kotlin\n- Convert Java Files to Kotlin\n- Understanding Kotlin Syntax\n- Creating Extra Kotlin Files\n\n#### Requirements\n\n- App Android Studio\n- Must have an understanding of the kotlin\n\n#### Difficulty\n\n- Basic\n\n#### Tutorial Contents\nInstalling Kotlin Plugin on Android Studio\n\nThe first thing you need to do is to add Kotlin support to your Android Studio installation.\n\nBefore you begin, make sure you're running the latest version of Android Studio, stable, as you're more likely to encounter bugs with Kotlin plugins in the experimental version of Android Studio. It's also worth opening the SDK Manager and checking whether updates are available for all packages you have installed.\nOnce you are sure that your development environment is up to date, you are ready to install the Kotlin plugin. Launch Android Studio and you'll see a Welcome window in Android Studio - if this window does not appear, close Android Studio completely and relaunch.\nGive the Configure icon a click, then select Plugins from the next dropdown menu.\n\n\nClick the Install JetBrains plugin ... button.\n\n\n\nSelect Kotlin from the menu, then click the green Install button. You must restart your IDE before the Kotlin plugin becomes active, so click the Restart Android Studio button that appears or restart your IDE manually.\n\n##### Configure Your Project to Use Kotlin\nAt this point, your IDE can understand and run the Kotlin code, but you still need to configure Kotlin every time you use it on a new project. Let's create a new project and configure the project to use Kotlin now. Create a new project with your preferred settings, but for simplicity's sake, choose Empty Activity when prompted.\n\nThanks to the Kotlin plugin, configuring the project to use Kotlin could not be simpler: just select Tools from the Android Studio toolbar, followed by Kotlin and Configure Kotlin in Project.\n\n\n\nThis will open a popup where you can choose to configure Kotlin to:\n\n- all modules\n- all modules containing Kotlin files\n- or a named module\nSince I will only use Kotlin code in my project, I choose All modules. You can also choose which version of Kotlin you want to use-usually, this will be the latest version.\n\nOr, you can configure Kotlin by selecting Help from the Android Studio menu bar, followed by Find Action ... In the Find Action bar, start typing Kotlin Configuration in Project, then select this option when it appears.\n\nThe Configuration Kotlin in Project selection makes a number of tweaks to your project's build.gradle file, so let's take a closer look at how these files have changed. Open your project-level build.gradle file - it should look like this:\n\n\n\nNow, let's look at your module-level build.gradle file:\n\n\nFinally, sync your changes by clicking Sync Now from the popup that appears or by clicking the Sync Project with Gradle Files icon on the Android Studio toolbar.\n\nConvert Java Files to Kotlin\nOne Kotlin plugin feature that is particularly useful for Kotlin's newcomers is its ability to convert Java source files to Kotlin, while maintaining full runtime compatibility.\n\nBeing able to see exactly how each Java file will be translated into Kotlin is ideal to help you learn the language, but it can also come in handy throughout your Kotlin trip- if you ever struggle to figure out how to write something in Kotlin, you can always write it in Java and then use this feature to convert that code into Kotlin.\n\nLet's convert our MainActivity project file into Kotlin source file. There are two ways to introduce Kotlin's Convert Java File plugin to Kotlin action file, so:\n\n- Select your MainActivity file and select Code from the Android Studio menu bar, followed by Convert Java File to Kotlin File.\n\n\n\n- Or choose Help from the Android Studio menu bar, followed by Find Action. In the next popup, start typing Convert Java file to Kotlin file and then select this option when it appears. Note that you can also launch Find Action popups with keyboard shortcuts: if you're using a Mac, press the Command-Shift-A key, and if you're using Windows or Linux, press Control-Shift-A.\n\nKnow that, depending on the complexity of your code, conversions may not always be 100% accurate, so you should always check the conversion code for errors.\n\nYour newly converted MainActivity will look like this:\n\n\nYou'll also notice that the file extension has changed, changing from *MainActivity.java* to *MainActivity.kt.*\n\nIt may be simple Activity, but some of these lines illustrate some of the key characteristics of Kotlin syntax. Since this is our first look at some of the actual Kotlin codes, let's select this class separately line by line.\n\n##### Understanding Kotlin Syntax\nIn Kotlin, you declare the class by using the keyword class, just like in Java. However, in Kotlin, classes (and methods) are public and final by default, so you can create a class just by writing the Class MainActivity.\n\nWhen it comes to expanding the class, you replace Java extends with a colon, and then attach the parent class name. So, in the first line of our MainActivity.kt file, we create a public end class called MainActivity that extends: AppCompatActivity\n\n\nJava equivalents are:\n\n\nIf you want to replace a class or method, then you must explicitly declare it as open or abstract.\n\nIn Kotlin, functions are defined using keywords \n, followed by function names and parameters in brackets. In Kotlin, the name of the function exists before its kind:\n\n\nThis is the opposite of Java, where type comes before the name:\n\n\nNote that we do not specify that this method is final, as in Kotlin all methods are final by default.\n\nThe rest of this activity looks very similar to Java. However, some of these lines illustrate other key characteristics of Kotlin:\n\n\nIn Kotlin you do not need to finish your sentence with a semicolon, then there is no colon in the above snippet. You can add a colon if you really want to, but your code will be cleaner and easier to read without them.\n\nNow that we've parsed our MainActivity.kt file, let's move it to the proper home. Since Kotlin plugin has trouble adding the src / main / kotlin declaration to our build.gradle file, let's actually create this directory. This step is not mandatory, but retaining your Kotlin file in a special directory will make the project cleaner.\n\nIn Android Studio Project Explorer, Control-click your Project's main directory and select New from the menu that appears, followed by Directory. Name this directory kotlin then click OK.\n\n\n\nIf you are struggling to see the main directory of your project, open a small dropdown at the top left of Project Explorer and select Project. You should have no problems viewing the elusive src / main directory.\n\n\nAfter you create a special Kotlin directory, drag your MainActivity.kt file into it. Be sure to retain the name of your existing MainActivity.kt package to keep your project running.\n\nAlso, if you're just going to use Kotlin in this project, you might want to remove the Java directory, rather than messing up your project with empty and unnecessary directories.\n\nBecause Kotlin compiles for bytecode, the app written in Kotlin feels exactly the same as the app written in Java, so try installing this app on your compatible Android device or AVD - it should feel as if nothing has changed.\n\n##### Creating Extra Kotlin Files\nIf you continue to work with Kotlin in your project, then sooner or later you will need to start creating a new Kotlin file instead of changing the one in Java.\nTo create a Kotlin file, Control-click your / src / main / Kotlin application directory and choose New> Kotlin Activity.\n\n\nGive your class a name and select a class from the drop-down menu. Your new class will look like this:\n\n\n\nAt this point, your activity is empty. To get to the point where you can start adding some real functionality, you need to complete a few steps. First, add  statement you want to use. The only difference between the import statements in Kotlin and the import statements in Java is that you do not need to complete each row with a semicolon. As an example:\n\n\nYou then have to specify the class that you extend, using the same format as we see in our **MainActivity.kt** file:\n\n\nNext, you need to change the Activity method \n\n\n\nNow you can add any functionality you want to this Activity (and in the next section, I'll show you how to use Kotlin extensions to manipulate UI widgets, so this might be a good place to start), but one final set up you need to finish is declare Your Kotlin Activity in your **Manifest**. It follows exactly the same formula by declaring a new Java Activity, for example:\n\n\n\n##### Kotlin Android Extension: Welcome to Wave \n\nNow that we've mastered the basics, let's take a closer look at what Kotlin really can do-start with features that can really reduce the amount of boilerplate code you need to write.\n\nOn Android, every time you want to work with anything  in an Activity you need to use  method to get a reference to that View. This makes  one of the most important, but also one of the most frustrating bits of code that you will find yourself writing over and over, and more so in your Android project. The  method is a huge source of potential bugs, and if you work with some UI elements in the same Activity, then everyone s can really mess up your code, making it difficult to read.\n\nAlthough there are a number of libraries, such as Butter Knife, which aims to remove the need for  s, this library still asks you to note on the fields for each Display, which can cause errors and still feel like a lot of effort will be done. better invested in other areas of your project.\nKotlin Kotlin Android plugin (which has just been incorporated into the standard Kotlin plugin) promises to make something of the past, offers the benefits of the above libraries without lack of having to write additional code or send an extra runtime.\n\nYou can use Kotlin extension to import eference to your source file. At this point, the Kotlin plugin will create a set of \"synthetic properties\" that let you work with this view as if they are part of your activity-most importantly, it means you no longer have to use it  to find each onebefore you can work with me t.\nTo use the extension, you must enable Kotlin Android Extensions plugins in each module, so go to your module **build.gradle** level file and add the following:\n\nSync these changes by clicking on **Sync Now**.\n\nYou can then import a reference to one , using the following format:\n\n\nFor example, if your **activity_main.xml** file contains an ID, then you will import a reference to this view by adding the following to:\n\n\nYou can then access this activity by using its own ID-and without vision!\nLet's look at the extension in action, by adding \n\nto our **activity_main.xml** file, import it into our **MainActivity.kt** file, and use the extension to programmatically set program text.\n\nStart by getting you:\n\n\nYou can then import it to **MainActivity.kt**you say, and specify text only with ID:\n\nNote, if you want to work with multiple widgets from the same layout file, you can import the entire contents of the layout files in one motion, using the following formula:\n\n\nFor example, if you want to import all the widgets from your activity_main.xml file then you will add the following to your Activity:\n\n\n\n\n### Curriculum\nThis is my first contribution\n\n<br /><hr/><em>Posted on <a href=\"https://utopian.io/utopian-io/@irmapijanist/coding-the-functional-android-app-in-kotlin-get-started\">Utopian.io - Rewarding Open Source Contributors</a></em><hr/>",
"json_metadata": "{\"community\":\"utopian\",\"app\":\"utopian/1.0.0\",\"format\":\"markdown\",\"repository\":{\"id\":3432266,\"name\":\"kotlin\",\"full_name\":\"JetBrains/kotlin\",\"html_url\":\"https://github.com/JetBrains/kotlin\",\"fork\":false,\"owner\":{\"login\":\"JetBrains\"}},\"pullRequests\":[],\"platform\":\"github\",\"type\":\"tutorials\",\"tags\":[\"utopian-io\",\"utopian-io\",\"tutorial\",\"opensource\"],\"links\":[\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521628568/q63shxdrldnoghxri0t6.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521628704/z0gdrfbwczh7c10l5v8p.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521628936/aruqkgot3ncwssuhvcr2.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629014/xkmikscsrglfg65i2xkl.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629121/icp5ilopramylxsxy3c7.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629220/u941xs23w8eoi3uym5vi.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629335/swci4ddrwituc3emqni4.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629727/xfmyfdtjlcfoyea74zlo.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629791/lnvv93uizmrhqbjhnhxq.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629877/muklqm1clips0l2b5oqf.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629939/i82igw7tviqgs5g0dpin.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629967/oxiew6ccdei5itxdbbvr.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630041/rewtfztgua0xolsrrohj.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630094/grlnnoy9eeclkkmxxkur.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630146/exoowstlsdgxj1nk6ing.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630216/gmrpa9a0veitk18bb0ye.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630297/bxkckhrzdlja8zs3ed3u.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630355/oorgqmvghmzx3zzqyoux.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630411/k3o77t9j5ccrkhq0q5ub.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630488/gaggl1jde5c0mctadjph.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630536/sxie5oxqqlxiviw9eyqa.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630582/ngujsrp5szxsmsodowao.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630822/pq0kv6ikj7bnchpkv7yg.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630888/kunpn1hc4h88ur0yhxyo.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630958/hfsp17rkhopr6kuxlady.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631010/e4cpllyy1pdmedtej6fl.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631045/hjnmzlx7ujl64emwueej.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631087/llrbhhpjsilinde3jzpd.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631121/uj63qij4nj8mgyemhbcn.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631172/vt1ag8owndawqtgkcj4o.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631215/j3czjchhfsovba6hvsl1.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631259/zfs7jvfnght69234izqb.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631293/n8z2k8goeqfl9t0ampwy.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631329/k7jemdksxx5pral2shhv.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631424/rcsfpnrwtppjxpifklzq.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631502/fju1bncj0r4oxxtwna1n.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631549/ahdowq4nwv6w09lkc8ac.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631627/hyryod1rvjipyxldte8r.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631658/ohdjpcew4jy58oaidgon.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631720/poh6egr4lbrbuw1iuvjh.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631757/kyxidrtrwuyjfobszqsi.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631981/lyhy9lrz6g8t650dkefj.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632017/zqewcnwi2u1ztmyqwosl.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632143/fpbdv5cexteubg6rh8zo.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632172/ec0fsowevobu9apgliyf.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632204/j9sg3gkarxtcxopho1su.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632278/ic9u2ksp0mioesbfb7f7.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632323/wgzo6sqeiebpc6tctgbm.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632430/fdbbvif4xqushrsfijpd.png\"],\"image\":[\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521628568/q63shxdrldnoghxri0t6.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521628704/z0gdrfbwczh7c10l5v8p.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521628936/aruqkgot3ncwssuhvcr2.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629014/xkmikscsrglfg65i2xkl.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629121/icp5ilopramylxsxy3c7.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629220/u941xs23w8eoi3uym5vi.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629335/swci4ddrwituc3emqni4.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629727/xfmyfdtjlcfoyea74zlo.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629791/lnvv93uizmrhqbjhnhxq.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629877/muklqm1clips0l2b5oqf.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629939/i82igw7tviqgs5g0dpin.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521629967/oxiew6ccdei5itxdbbvr.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630041/rewtfztgua0xolsrrohj.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630094/grlnnoy9eeclkkmxxkur.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630146/exoowstlsdgxj1nk6ing.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630216/gmrpa9a0veitk18bb0ye.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630297/bxkckhrzdlja8zs3ed3u.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630355/oorgqmvghmzx3zzqyoux.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630411/k3o77t9j5ccrkhq0q5ub.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630488/gaggl1jde5c0mctadjph.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630536/sxie5oxqqlxiviw9eyqa.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630582/ngujsrp5szxsmsodowao.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630822/pq0kv6ikj7bnchpkv7yg.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630888/kunpn1hc4h88ur0yhxyo.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521630958/hfsp17rkhopr6kuxlady.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631010/e4cpllyy1pdmedtej6fl.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631045/hjnmzlx7ujl64emwueej.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631087/llrbhhpjsilinde3jzpd.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631121/uj63qij4nj8mgyemhbcn.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631172/vt1ag8owndawqtgkcj4o.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631215/j3czjchhfsovba6hvsl1.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631259/zfs7jvfnght69234izqb.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631293/n8z2k8goeqfl9t0ampwy.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631329/k7jemdksxx5pral2shhv.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631424/rcsfpnrwtppjxpifklzq.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631502/fju1bncj0r4oxxtwna1n.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631549/ahdowq4nwv6w09lkc8ac.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631627/hyryod1rvjipyxldte8r.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631658/ohdjpcew4jy58oaidgon.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631720/poh6egr4lbrbuw1iuvjh.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631757/kyxidrtrwuyjfobszqsi.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521631981/lyhy9lrz6g8t650dkefj.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632017/zqewcnwi2u1ztmyqwosl.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632143/fpbdv5cexteubg6rh8zo.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632172/ec0fsowevobu9apgliyf.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632204/j9sg3gkarxtcxopho1su.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632278/ic9u2ksp0mioesbfb7f7.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632323/wgzo6sqeiebpc6tctgbm.png\",\"https://res.cloudinary.com/hpiynhbhq/image/upload/v1521632430/fdbbvif4xqushrsfijpd.png\"]}",
"parent_author": "",
"parent_permlink": "utopian-io",
"permlink": "coding-the-functional-android-app-in-kotlin-get-started",
"title": "Coding the Functional Android App in Kotlin: Get started"
}
],
"op_in_trx": 0,
"timestamp": "2018-03-21T11:46:00",
"trx_id": "8a026cd6021be96715695321e43879e7649c75b4",
"trx_in_block": 26,
"virtual_op": 0
}irmapijanistupdated their account properties2018/03/21 09:52:45
irmapijanistupdated their account properties
2018/03/21 09:52:45
| account | irmapijanist |
| json metadata | {"profile":{"location":"French - Luxembourg","profile_image":"https://s13.postimg.org/f021b4r1j/Screenshot_5.png","cover_image":"https://s18.postimg.org/szp44e2jt/cover_steemit1.jpg"}} |
| memo key | STM6GKmd6dv1mkTj6nKZQ4jjhCjQjP8GcD2J2AEXVHSi9cv5pZnAD |
| posting | {"account_auths":[["utopian.app",1]],"key_auths":[["STM5Gp5jLeiLqdJpZxRFhRFfFZNHwwe4d8fhZsUqK3zMBpz2bWRSA",1]],"weight_threshold":1} |
| Transaction Info | Block #20866078/Trx 0f3401e2c9e9ad79a408d1be1d4d2a08f1d6b33d |
View Raw JSON Data
{
"block": 20866078,
"op": [
"account_update",
{
"account": "irmapijanist",
"json_metadata": "{\"profile\":{\"location\":\"French - Luxembourg\",\"profile_image\":\"https://s13.postimg.org/f021b4r1j/Screenshot_5.png\",\"cover_image\":\"https://s18.postimg.org/szp44e2jt/cover_steemit1.jpg\"}}",
"memo_key": "STM6GKmd6dv1mkTj6nKZQ4jjhCjQjP8GcD2J2AEXVHSi9cv5pZnAD",
"posting": {
"account_auths": [
[
"utopian.app",
1
]
],
"key_auths": [
[
"STM5Gp5jLeiLqdJpZxRFhRFfFZNHwwe4d8fhZsUqK3zMBpz2bWRSA",
1
]
],
"weight_threshold": 1
}
}
],
"op_in_trx": 0,
"timestamp": "2018-03-21T09:52:45",
"trx_id": "0f3401e2c9e9ad79a408d1be1d4d2a08f1d6b33d",
"trx_in_block": 0,
"virtual_op": 0
}irmapijanistreceived 0.004 SP curation reward for @xaero1 / re-lightenup-the-best-camera-for-black-and-white-can-be-had-for-usd200-usd300-20180313t192215720z2018/03/20 19:22:15
irmapijanistreceived 0.004 SP curation reward for @xaero1 / re-lightenup-the-best-camera-for-black-and-white-can-be-had-for-usd200-usd300-20180313t192215720z
2018/03/20 19:22:15
| comment author | xaero1 |
| comment permlink | re-lightenup-the-best-camera-for-black-and-white-can-be-had-for-usd200-usd300-20180313t192215720z |
| curator | irmapijanist |
| reward | 6.122769 VESTS |
| Transaction Info | Block #20848886/Virtual Operation #10 |
View Raw JSON Data
{
"block": 20848886,
"op": [
"curation_reward",
{
"comment_author": "xaero1",
"comment_permlink": "re-lightenup-the-best-camera-for-black-and-white-can-be-had-for-usd200-usd300-20180313t192215720z",
"curator": "irmapijanist",
"reward": "6.122769 VESTS"
}
],
"op_in_trx": 0,
"timestamp": "2018-03-20T19:22:15",
"trx_id": "0000000000000000000000000000000000000000",
"trx_in_block": 4294967295,
"virtual_op": 10
}irmapijanistreceived 0.108 SBD, 0.069 SP author reward for @irmapijanist / the-art2018/03/17 22:43:39
irmapijanistreceived 0.108 SBD, 0.069 SP author reward for @irmapijanist / the-art
2018/03/17 22:43:39
| author | irmapijanist |
| permlink | the-art |
| sbd payout | 0.108 SBD |
| steem payout | 0.000 STEEM |
| vesting payout | 112.267697 VESTS |
| Transaction Info | Block #20766567/Virtual Operation #23 |
View Raw JSON Data
{
"block": 20766567,
"op": [
"author_reward",
{
"author": "irmapijanist",
"permlink": "the-art",
"sbd_payout": "0.108 SBD",
"steem_payout": "0.000 STEEM",
"vesting_payout": "112.267697 VESTS"
}
],
"op_in_trx": 0,
"timestamp": "2018-03-17T22:43:39",
"trx_id": "0000000000000000000000000000000000000000",
"trx_in_block": 4294967295,
"virtual_op": 23
}zapplreceived 0.024 SP benefactor reward from @irmapijanist2018/03/17 22:43:39
zapplreceived 0.024 SP benefactor reward from @irmapijanist
2018/03/17 22:43:39
| author | irmapijanist |
| benefactor | zappl |
| permlink | the-art |
| sbd payout | 0.000 SBD |
| steem payout | 0.000 STEEM |
| vesting payout | 38.783386 VESTS |
| Transaction Info | Block #20766567/Virtual Operation #22 |
View Raw JSON Data
{
"block": 20766567,
"op": [
"comment_benefactor_reward",
{
"author": "irmapijanist",
"benefactor": "zappl",
"permlink": "the-art",
"sbd_payout": "0.000 SBD",
"steem_payout": "0.000 STEEM",
"vesting_payout": "38.783386 VESTS"
}
],
"op_in_trx": 0,
"timestamp": "2018-03-17T22:43:39",
"trx_id": "0000000000000000000000000000000000000000",
"trx_in_block": 4294967295,
"virtual_op": 22
}calvin7upvoted (100.00%) @irmapijanist / heir-of-light-android-os-game-review2018/03/16 22:04:57
calvin7upvoted (100.00%) @irmapijanist / heir-of-light-android-os-game-review
2018/03/16 22:04:57
| author | irmapijanist |
| permlink | heir-of-light-android-os-game-review |
| voter | calvin7 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #20737003/Trx b5d2615ce556beef83affbad7b0a9b04fe3c24bd |
View Raw JSON Data
{
"block": 20737003,
"op": [
"vote",
{
"author": "irmapijanist",
"permlink": "heir-of-light-android-os-game-review",
"voter": "calvin7",
"weight": 10000
}
],
"op_in_trx": 0,
"timestamp": "2018-03-16T22:04:57",
"trx_id": "b5d2615ce556beef83affbad7b0a9b04fe3c24bd",
"trx_in_block": 35,
"virtual_op": 0
}calvin7upvoted (100.00%) @irmapijanist / review-game-titanfall-22018/03/16 22:04:48
calvin7upvoted (100.00%) @irmapijanist / review-game-titanfall-2
2018/03/16 22:04:48
| author | irmapijanist |
| permlink | review-game-titanfall-2 |
| voter | calvin7 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #20737000/Trx 1cd942691cfcb756ec7b355b20a0a4bb0ec8676c |
View Raw JSON Data
{
"block": 20737000,
"op": [
"vote",
{
"author": "irmapijanist",
"permlink": "review-game-titanfall-2",
"voter": "calvin7",
"weight": 10000
}
],
"op_in_trx": 0,
"timestamp": "2018-03-16T22:04:48",
"trx_id": "1cd942691cfcb756ec7b355b20a0a4bb0ec8676c",
"trx_in_block": 75,
"virtual_op": 0
}irmapijanistsent 0.361 SBD to @xaero1- "https://steemit.com/gaming/@irmapijanist/review-game-titanfall-2"2018/03/16 19:57:06
irmapijanistsent 0.361 SBD to @xaero1- "https://steemit.com/gaming/@irmapijanist/review-game-titanfall-2"
2018/03/16 19:57:06
| amount | 0.361 SBD |
| from | irmapijanist |
| memo | https://steemit.com/gaming/@irmapijanist/review-game-titanfall-2 |
| to | xaero1 |
| Transaction Info | Block #20734447/Trx 54ba32d45252302ac5960cedee2529a05fb16743 |
View Raw JSON Data
{
"block": 20734447,
"op": [
"transfer",
{
"amount": "0.361 SBD",
"from": "irmapijanist",
"memo": "https://steemit.com/gaming/@irmapijanist/review-game-titanfall-2",
"to": "xaero1"
}
],
"op_in_trx": 0,
"timestamp": "2018-03-16T19:57:06",
"trx_id": "54ba32d45252302ac5960cedee2529a05fb16743",
"trx_in_block": 23,
"virtual_op": 0
}irmapijanistfollowed @xaero12018/03/16 19:56:12
irmapijanistfollowed @xaero1
2018/03/16 19:56:12
| id | follow |
| json | ["follow",{"follower":"irmapijanist","following":"xaero1","what":["blog"]}] |
| required auths | [] |
| required posting auths | ["irmapijanist"] |
| Transaction Info | Block #20734429/Trx 78df5f12ee1b817bbff279ad119113fabde57742 |
View Raw JSON Data
{
"block": 20734429,
"op": [
"custom_json",
{
"id": "follow",
"json": "[\"follow\",{\"follower\":\"irmapijanist\",\"following\":\"xaero1\",\"what\":[\"blog\"]}]",
"required_auths": [],
"required_posting_auths": [
"irmapijanist"
]
}
],
"op_in_trx": 0,
"timestamp": "2018-03-16T19:56:12",
"trx_id": "78df5f12ee1b817bbff279ad119113fabde57742",
"trx_in_block": 62,
"virtual_op": 0
}irmapijanistupvoted (100.00%) @xaero1 / re-lightenup-black-and-whites-for-the-cryptos-20180312t223344060z2018/03/16 19:54:39
irmapijanistupvoted (100.00%) @xaero1 / re-lightenup-black-and-whites-for-the-cryptos-20180312t223344060z
2018/03/16 19:54:39
| author | xaero1 |
| permlink | re-lightenup-black-and-whites-for-the-cryptos-20180312t223344060z |
| voter | irmapijanist |
| weight | 10000 (100.00%) |
| Transaction Info | Block #20734398/Trx ce126c62399abe3373755a22b7de3516c8f1a5b5 |
View Raw JSON Data
{
"block": 20734398,
"op": [
"vote",
{
"author": "xaero1",
"permlink": "re-lightenup-black-and-whites-for-the-cryptos-20180312t223344060z",
"voter": "irmapijanist",
"weight": 10000
}
],
"op_in_trx": 0,
"timestamp": "2018-03-16T19:54:39",
"trx_id": "ce126c62399abe3373755a22b7de3516c8f1a5b5",
"trx_in_block": 54,
"virtual_op": 0
}2018/03/16 19:54:33
2018/03/16 19:54:33
| author | xaero1 |
| permlink | re-diabolika-celebrating-my-insignificant-existence-in-the-vast-universe-20180313t105227224z |
| voter | irmapijanist |
| weight | 10000 (100.00%) |
| Transaction Info | Block #20734396/Trx 782ce7dc1e7eb76e1077c353730729821fd1972b |
View Raw JSON Data
{
"block": 20734396,
"op": [
"vote",
{
"author": "xaero1",
"permlink": "re-diabolika-celebrating-my-insignificant-existence-in-the-vast-universe-20180313t105227224z",
"voter": "irmapijanist",
"weight": 10000
}
],
"op_in_trx": 0,
"timestamp": "2018-03-16T19:54:33",
"trx_id": "782ce7dc1e7eb76e1077c353730729821fd1972b",
"trx_in_block": 54,
"virtual_op": 0
}2018/03/16 19:54:27
2018/03/16 19:54:27
| author | xaero1 |
| permlink | re-lightenup-the-best-camera-for-black-and-white-can-be-had-for-usd200-usd300-20180313t192215720z |
| voter | irmapijanist |
| weight | 10000 (100.00%) |
| Transaction Info | Block #20734394/Trx 216ea2247b3e562abab2c73a43c4dd15cfab0af0 |
View Raw JSON Data
{
"block": 20734394,
"op": [
"vote",
{
"author": "xaero1",
"permlink": "re-lightenup-the-best-camera-for-black-and-white-can-be-had-for-usd200-usd300-20180313t192215720z",
"voter": "irmapijanist",
"weight": 10000
}
],
"op_in_trx": 0,
"timestamp": "2018-03-16T19:54:27",
"trx_id": "216ea2247b3e562abab2c73a43c4dd15cfab0af0",
"trx_in_block": 31,
"virtual_op": 0
}irmapijanistupvoted (100.00%) @xaero1 / re-jwolf-why-should-a-whale-to-20180313t192647560z2018/03/16 19:54:21
irmapijanistupvoted (100.00%) @xaero1 / re-jwolf-why-should-a-whale-to-20180313t192647560z
2018/03/16 19:54:21
| author | xaero1 |
| permlink | re-jwolf-why-should-a-whale-to-20180313t192647560z |
| voter | irmapijanist |
| weight | 10000 (100.00%) |
| Transaction Info | Block #20734392/Trx 6668cd559dbe7f66e08e888c445299a21698427d |
View Raw JSON Data
{
"block": 20734392,
"op": [
"vote",
{
"author": "xaero1",
"permlink": "re-jwolf-why-should-a-whale-to-20180313t192647560z",
"voter": "irmapijanist",
"weight": 10000
}
],
"op_in_trx": 0,
"timestamp": "2018-03-16T19:54:21",
"trx_id": "6668cd559dbe7f66e08e888c445299a21698427d",
"trx_in_block": 69,
"virtual_op": 0
}2018/03/16 14:21:09
2018/03/16 14:21:09
| author | spydo |
| body | Congratulations, your post received 15.63% up vote form @spydo courtesy of @irmapijanist! I hope, my gratitude will help you getting more visibility. You can also earn by making delegation. [Click here to delegate](https://steembottracker.com/delegation.html?delegatee=spydo) to @spydo and earn 95% daily reward payout! [Follow this link](https://steemit.com/delegation/@spydo/delegation-guide-get-max-return-for-your-delegation) to know more about delegation benefits. |
| json metadata | {"app":"postpromoter/1.8.8"} |
| parent author | irmapijanist |
| parent permlink | review-game-titanfall-2 |
| permlink | re-irmapijanist-review-game-titanfall-2-20180316t142108465z |
| title | re-irmapijanist-review-game-titanfall-2-20180316t142108465z |
| Transaction Info | Block #20727730/Trx 82f4eed4f95ed62a0c6b573dfecd02828e0c6328 |
View Raw JSON Data
{
"block": 20727730,
"op": [
"comment",
{
"author": "spydo",
"body": "Congratulations, your post received 15.63% up vote form @spydo courtesy of @irmapijanist! I hope, my gratitude will help you getting more visibility.\nYou can also earn by making delegation. [Click here to delegate](https://steembottracker.com/delegation.html?delegatee=spydo) to @spydo and earn 95% daily reward payout! [Follow this link](https://steemit.com/delegation/@spydo/delegation-guide-get-max-return-for-your-delegation) to know more about delegation benefits.\n",
"json_metadata": "{\"app\":\"postpromoter/1.8.8\"}",
"parent_author": "irmapijanist",
"parent_permlink": "review-game-titanfall-2",
"permlink": "re-irmapijanist-review-game-titanfall-2-20180316t142108465z",
"title": "re-irmapijanist-review-game-titanfall-2-20180316t142108465z"
}
],
"op_in_trx": 0,
"timestamp": "2018-03-16T14:21:09",
"trx_id": "82f4eed4f95ed62a0c6b573dfecd02828e0c6328",
"trx_in_block": 23,
"virtual_op": 0
}karinaayuupvoted (100.00%) @irmapijanist / review-game-titanfall-22018/03/16 14:20:33
karinaayuupvoted (100.00%) @irmapijanist / review-game-titanfall-2
2018/03/16 14:20:33
| author | irmapijanist |
| permlink | review-game-titanfall-2 |
| voter | karinaayu |
| weight | 10000 (100.00%) |
| Transaction Info | Block #20727718/Trx 64645e4dbcbfee4ade378d843be1d64ed8d617ca |
View Raw JSON Data
{
"block": 20727718,
"op": [
"vote",
{
"author": "irmapijanist",
"permlink": "review-game-titanfall-2",
"voter": "karinaayu",
"weight": 10000
}
],
"op_in_trx": 0,
"timestamp": "2018-03-16T14:20:33",
"trx_id": "64645e4dbcbfee4ade378d843be1d64ed8d617ca",
"trx_in_block": 6,
"virtual_op": 0
}spydoupvoted (15.63%) @irmapijanist / review-game-titanfall-22018/03/16 14:19:39
spydoupvoted (15.63%) @irmapijanist / review-game-titanfall-2
2018/03/16 14:19:39
| author | irmapijanist |
| permlink | review-game-titanfall-2 |
| voter | spydo |
| weight | 1563 (15.63%) |
| Transaction Info | Block #20727700/Trx 16c6f41feb0a910b93d44c6a7209e0b58310ee22 |
View Raw JSON Data
{
"block": 20727700,
"op": [
"vote",
{
"author": "irmapijanist",
"permlink": "review-game-titanfall-2",
"voter": "spydo",
"weight": 1563
}
],
"op_in_trx": 0,
"timestamp": "2018-03-16T14:19:39",
"trx_id": "16c6f41feb0a910b93d44c6a7209e0b58310ee22",
"trx_in_block": 6,
"virtual_op": 0
}irmapijanistsent 0.500 SBD to @spydo- "https://steemit.com/gaming/@irmapijanist/review-game-titanfall-2"2018/03/16 14:17:09
irmapijanistsent 0.500 SBD to @spydo- "https://steemit.com/gaming/@irmapijanist/review-game-titanfall-2"
2018/03/16 14:17:09
| amount | 0.500 SBD |
| from | irmapijanist |
| memo | https://steemit.com/gaming/@irmapijanist/review-game-titanfall-2 |
| to | spydo |
| Transaction Info | Block #20727650/Trx 0a4cee45388ee02d098f89aeb21fbeec85e76814 |
View Raw JSON Data
{
"block": 20727650,
"op": [
"transfer",
{
"amount": "0.500 SBD",
"from": "irmapijanist",
"memo": "https://steemit.com/gaming/@irmapijanist/review-game-titanfall-2",
"to": "spydo"
}
],
"op_in_trx": 0,
"timestamp": "2018-03-16T14:17:09",
"trx_id": "0a4cee45388ee02d098f89aeb21fbeec85e76814",
"trx_in_block": 0,
"virtual_op": 0
}ninjalaskarupvoted (100.00%) @irmapijanist / heir-of-light-android-os-game-review2018/03/16 14:16:03
ninjalaskarupvoted (100.00%) @irmapijanist / heir-of-light-android-os-game-review
2018/03/16 14:16:03
| author | irmapijanist |
| permlink | heir-of-light-android-os-game-review |
| voter | ninjalaskar |
| weight | 10000 (100.00%) |
| Transaction Info | Block #20727628/Trx 1ff5dc6ab098d6d1c1d900bc8ff40f568bdb853d |
View Raw JSON Data
{
"block": 20727628,
"op": [
"vote",
{
"author": "irmapijanist",
"permlink": "heir-of-light-android-os-game-review",
"voter": "ninjalaskar",
"weight": 10000
}
],
"op_in_trx": 0,
"timestamp": "2018-03-16T14:16:03",
"trx_id": "1ff5dc6ab098d6d1c1d900bc8ff40f568bdb853d",
"trx_in_block": 0,
"virtual_op": 0
}ninjalaskarupvoted (100.00%) @irmapijanist / review-game-titanfall-22018/03/16 14:15:54
ninjalaskarupvoted (100.00%) @irmapijanist / review-game-titanfall-2
2018/03/16 14:15:54
| author | irmapijanist |
| permlink | review-game-titanfall-2 |
| voter | ninjalaskar |
| weight | 10000 (100.00%) |
| Transaction Info | Block #20727625/Trx c175098244b0265e9db7763f252a508f48b89ab9 |
View Raw JSON Data
{
"block": 20727625,
"op": [
"vote",
{
"author": "irmapijanist",
"permlink": "review-game-titanfall-2",
"voter": "ninjalaskar",
"weight": 10000
}
],
"op_in_trx": 0,
"timestamp": "2018-03-16T14:15:54",
"trx_id": "c175098244b0265e9db7763f252a508f48b89ab9",
"trx_in_block": 27,
"virtual_op": 0
}irmapijanistfollowed @mzkara2018/03/16 14:11:09
irmapijanistfollowed @mzkara
2018/03/16 14:11:09
| id | follow |
| json | ["follow",{"follower":"irmapijanist","following":"mzkara","what":["blog"]}] |
| required auths | [] |
| required posting auths | ["irmapijanist"] |
| Transaction Info | Block #20727530/Trx 3b08981b4f35b26a70a29d5efc41cbe1ca0c4ece |
View Raw JSON Data
{
"block": 20727530,
"op": [
"custom_json",
{
"id": "follow",
"json": "[\"follow\",{\"follower\":\"irmapijanist\",\"following\":\"mzkara\",\"what\":[\"blog\"]}]",
"required_auths": [],
"required_posting_auths": [
"irmapijanist"
]
}
],
"op_in_trx": 0,
"timestamp": "2018-03-16T14:11:09",
"trx_id": "3b08981b4f35b26a70a29d5efc41cbe1ca0c4ece",
"trx_in_block": 49,
"virtual_op": 0
}irmapijanistfollowed @ambmicheal2018/03/16 14:10:45
irmapijanistfollowed @ambmicheal
2018/03/16 14:10:45
| id | follow |
| json | ["follow",{"follower":"irmapijanist","following":"ambmicheal","what":["blog"]}] |
| required auths | [] |
| required posting auths | ["irmapijanist"] |
| Transaction Info | Block #20727522/Trx 789d873181a5f81980a9696571182b1bf736ac50 |
View Raw JSON Data
{
"block": 20727522,
"op": [
"custom_json",
{
"id": "follow",
"json": "[\"follow\",{\"follower\":\"irmapijanist\",\"following\":\"ambmicheal\",\"what\":[\"blog\"]}]",
"required_auths": [],
"required_posting_auths": [
"irmapijanist"
]
}
],
"op_in_trx": 0,
"timestamp": "2018-03-16T14:10:45",
"trx_id": "789d873181a5f81980a9696571182b1bf736ac50",
"trx_in_block": 30,
"virtual_op": 0
}irmapijanistfollowed @juliusfatai2018/03/16 14:10:21
irmapijanistfollowed @juliusfatai
2018/03/16 14:10:21
| id | follow |
| json | ["follow",{"follower":"irmapijanist","following":"juliusfatai","what":["blog"]}] |
| required auths | [] |
| required posting auths | ["irmapijanist"] |
| Transaction Info | Block #20727514/Trx 8634bb3b4ac029db2b0882412811e6220a62055c |
View Raw JSON Data
{
"block": 20727514,
"op": [
"custom_json",
{
"id": "follow",
"json": "[\"follow\",{\"follower\":\"irmapijanist\",\"following\":\"juliusfatai\",\"what\":[\"blog\"]}]",
"required_auths": [],
"required_posting_auths": [
"irmapijanist"
]
}
],
"op_in_trx": 0,
"timestamp": "2018-03-16T14:10:21",
"trx_id": "8634bb3b4ac029db2b0882412811e6220a62055c",
"trx_in_block": 36,
"virtual_op": 0
}irmapijanistfollowed @hadebaryor2018/03/16 14:09:57
irmapijanistfollowed @hadebaryor
2018/03/16 14:09:57
| id | follow |
| json | ["follow",{"follower":"irmapijanist","following":"hadebaryor","what":["blog"]}] |
| required auths | [] |
| required posting auths | ["irmapijanist"] |
| Transaction Info | Block #20727506/Trx 8df628134ce4b4e14a2e55155cd3c571c2578add |
View Raw JSON Data
{
"block": 20727506,
"op": [
"custom_json",
{
"id": "follow",
"json": "[\"follow\",{\"follower\":\"irmapijanist\",\"following\":\"hadebaryor\",\"what\":[\"blog\"]}]",
"required_auths": [],
"required_posting_auths": [
"irmapijanist"
]
}
],
"op_in_trx": 0,
"timestamp": "2018-03-16T14:09:57",
"trx_id": "8df628134ce4b4e14a2e55155cd3c571c2578add",
"trx_in_block": 3,
"virtual_op": 0
}irmapijanistfollowed @favourblessing2018/03/16 14:09:30
irmapijanistfollowed @favourblessing
2018/03/16 14:09:30
| id | follow |
| json | ["follow",{"follower":"irmapijanist","following":"favourblessing","what":["blog"]}] |
| required auths | [] |
| required posting auths | ["irmapijanist"] |
| Transaction Info | Block #20727497/Trx 8d3155928fc8cf109c319b55c3bffd06f258a55a |
View Raw JSON Data
{
"block": 20727497,
"op": [
"custom_json",
{
"id": "follow",
"json": "[\"follow\",{\"follower\":\"irmapijanist\",\"following\":\"favourblessing\",\"what\":[\"blog\"]}]",
"required_auths": [],
"required_posting_auths": [
"irmapijanist"
]
}
],
"op_in_trx": 0,
"timestamp": "2018-03-16T14:09:30",
"trx_id": "8d3155928fc8cf109c319b55c3bffd06f258a55a",
"trx_in_block": 12,
"virtual_op": 0
}irmapijanistfollowed @chimzycash2018/03/16 14:07:27
irmapijanistfollowed @chimzycash
2018/03/16 14:07:27
| id | follow |
| json | ["follow",{"follower":"irmapijanist","following":"chimzycash","what":["blog"]}] |
| required auths | [] |
| required posting auths | ["irmapijanist"] |
| Transaction Info | Block #20727456/Trx f3a131de1f32abb9443147c3b5f4242643637631 |
View Raw JSON Data
{
"block": 20727456,
"op": [
"custom_json",
{
"id": "follow",
"json": "[\"follow\",{\"follower\":\"irmapijanist\",\"following\":\"chimzycash\",\"what\":[\"blog\"]}]",
"required_auths": [],
"required_posting_auths": [
"irmapijanist"
]
}
],
"op_in_trx": 0,
"timestamp": "2018-03-16T14:07:27",
"trx_id": "f3a131de1f32abb9443147c3b5f4242643637631",
"trx_in_block": 6,
"virtual_op": 0
}irmapijanistupvoted (100.00%) @tfame3865 / clash-of-queen-dragon-c-o-q-android-os-game-review2018/03/16 14:03:45
irmapijanistupvoted (100.00%) @tfame3865 / clash-of-queen-dragon-c-o-q-android-os-game-review
2018/03/16 14:03:45
| author | tfame3865 |
| permlink | clash-of-queen-dragon-c-o-q-android-os-game-review |
| voter | irmapijanist |
| weight | 10000 (100.00%) |
| Transaction Info | Block #20727382/Trx 8c3e0864ac66581077d9331f42e87ea2454cf990 |
View Raw JSON Data
{
"block": 20727382,
"op": [
"vote",
{
"author": "tfame3865",
"permlink": "clash-of-queen-dragon-c-o-q-android-os-game-review",
"voter": "irmapijanist",
"weight": 10000
}
],
"op_in_trx": 0,
"timestamp": "2018-03-16T14:03:45",
"trx_id": "8c3e0864ac66581077d9331f42e87ea2454cf990",
"trx_in_block": 40,
"virtual_op": 0
}irmapijanistupvoted (100.00%) @tfame3865 / march-of-empires-war-of-lords-android-os-game-review2018/03/16 14:03:39
irmapijanistupvoted (100.00%) @tfame3865 / march-of-empires-war-of-lords-android-os-game-review
2018/03/16 14:03:39
| author | tfame3865 |
| permlink | march-of-empires-war-of-lords-android-os-game-review |
| voter | irmapijanist |
| weight | 10000 (100.00%) |
| Transaction Info | Block #20727380/Trx 3fae134cd650d70caf60b58f4d624ed36c985883 |
View Raw JSON Data
{
"block": 20727380,
"op": [
"vote",
{
"author": "tfame3865",
"permlink": "march-of-empires-war-of-lords-android-os-game-review",
"voter": "irmapijanist",
"weight": 10000
}
],
"op_in_trx": 0,
"timestamp": "2018-03-16T14:03:39",
"trx_id": "3fae134cd650d70caf60b58f4d624ed36c985883",
"trx_in_block": 26,
"virtual_op": 0
}irmapijanistfollowed @tfame38652018/03/16 14:03:30
irmapijanistfollowed @tfame3865
2018/03/16 14:03:30
| id | follow |
| json | ["follow",{"follower":"irmapijanist","following":"tfame3865","what":["blog"]}] |
| required auths | [] |
| required posting auths | ["irmapijanist"] |
| Transaction Info | Block #20727377/Trx c253f21169fac3bfa246e3e3cc9dead8f19c0a64 |
View Raw JSON Data
{
"block": 20727377,
"op": [
"custom_json",
{
"id": "follow",
"json": "[\"follow\",{\"follower\":\"irmapijanist\",\"following\":\"tfame3865\",\"what\":[\"blog\"]}]",
"required_auths": [],
"required_posting_auths": [
"irmapijanist"
]
}
],
"op_in_trx": 0,
"timestamp": "2018-03-16T14:03:30",
"trx_id": "c253f21169fac3bfa246e3e3cc9dead8f19c0a64",
"trx_in_block": 4,
"virtual_op": 0
}irmapijanistpublished a new post: review-game-titanfall-22018/03/16 13:59:06
irmapijanistpublished a new post: review-game-titanfall-2
2018/03/16 13:59:06
| author | irmapijanist |
| body | @@ -10537,16 +10537,187 @@ year.%0A%0A +!%5BU5dqreQGcdJEeSuqLV59aXCKZWJpckM_1680x8400.png%5D(https://steemitimages.com/DQmWeyYtmtE3dshPWRFsX1ENJutFKPcXwgTmFFCuE9tPM2P/U5dqreQGcdJEeSuqLV59aXCKZWJpckM_1680x8400.png)%0A%0A !%5BDgpeOQ |
| json metadata | {"tags":["gaming","game","life"],"image":["https://steemitimages.com/DQmWZnS8m1DUSPJDm9BwB49VPmb9mDdCRe2xrv7r2Hw3b9X/716179.png","https://steemitimages.com/DQma4S9kqJYsmSQsugkS6Uzo4VXmagMgCMHhXBq2k5SVNMj/Titanfall-2-Screenshot-2.jpg","https://steemitimages.com/DQmWCSfjEgyYTikimvsTEAxqC7sWrYm6PpuoTpt2fX3JS6e/Titanfall-2-Screenshot-3.jpg","https://steemitimages.com/DQmYPmutpzdnW6Z4xCvasmEJ82W4CcN3wqtrYanf9GbYtsW/Titanfall-2-Screenshot-4.jpg","https://steemitimages.com/DQmdWSVYjeM31CaeDHkP68trGkinQpohLdLoznBPsUXfu9v/Titanfall-2-Screenshot-5.jpg","https://steemitimages.com/DQmf7WixScp7ejTZ38iNHw6PaFUpEfEF17n1cBDigi1GNY9/Titanfall-2-Screenshot-9.jpg","https://steemitimages.com/DQmXqARx2KqBJw8hXF2RunVFFKPqXwjtFC6NaJXPFJgRTKt/Titanfall-2-Screenshot-10.jpg","https://steemitimages.com/DQmVtG4MKN9Ktj2JVhpY4wPAQ1mL3N5rJgwnxuuwcZ8KVvp/Titanfall-2-Screenshot-11.jpg","https://steemitimages.com/DQmVY7HSuEw2aCB5mFwfiS3MKsPjAK5A2a3cj4pDQFZzjG9/Titanfall-2-Screenshot-12.jpg","https://steemitimages.com/DQmPXBFuSgnLzgBDGQyoqSgFkNdRAKzDEoFWVq8iJj5qbE4/Titanfall-2-Screenshot-13-1.jpg","https://steemitimages.com/DQmehp6iyz1DrStDdUCLQYBFAqXQFKqE5X4zTQSkx4YQBtD/Titanfall-2-Screenshot-14.jpg","https://steemitimages.com/DQmWBH8gZaAq3QE7DTw1n4uYbBB35tBJ58biETLbtzs83rT/Titanfall-2-Screenshot-16.jpg","https://steemitimages.com/DQmQq8vevtb1H7tn1Pa4dTQi2UnHPE681WW2LtYg6ryt6Gr/Titanfall-2-Screenshot-17.jpg","https://steemitimages.com/DQmabKHWHSHnDXoWRuEMTZQHNJFLff7VaMZ4UKGsiVXRMvV/Titanfall-2-Screenshot-18.jpg","https://steemitimages.com/DQmTR8NJc3dyXnzH4RLdJryXHtQJXZndCkQaYNaZp7MowZT/Titanfall-2-Screenshot-19.jpg","https://steemitimages.com/DQmWeyYtmtE3dshPWRFsX1ENJutFKPcXwgTmFFCuE9tPM2P/U5dqreQGcdJEeSuqLV59aXCKZWJpckM_1680x8400.png","https://steemitimages.com/DQmYvBNkspmkUNqMwJrLz61sUJUcc6FLjeUbBFpqZNihHBg/DgpeOQ.png"],"links":["https://wall.alphacoders.com/big.php?i=716179"],"app":"steemit/0.1","format":"markdown"} |
| parent author | |
| parent permlink | gaming |
| permlink | review-game-titanfall-2 |
| title | Review Game Titanfall 2 |
| Transaction Info | Block #20727289/Trx 57f09978f2320d1ed5cd8dc50fbc4998b1e76091 |
View Raw JSON Data
{
"block": 20727289,
"op": [
"comment",
{
"author": "irmapijanist",
"body": "@@ -10537,16 +10537,187 @@\n year.%0A%0A\n+!%5BU5dqreQGcdJEeSuqLV59aXCKZWJpckM_1680x8400.png%5D(https://steemitimages.com/DQmWeyYtmtE3dshPWRFsX1ENJutFKPcXwgTmFFCuE9tPM2P/U5dqreQGcdJEeSuqLV59aXCKZWJpckM_1680x8400.png)%0A%0A\n !%5BDgpeOQ\n",
"json_metadata": "{\"tags\":[\"gaming\",\"game\",\"life\"],\"image\":[\"https://steemitimages.com/DQmWZnS8m1DUSPJDm9BwB49VPmb9mDdCRe2xrv7r2Hw3b9X/716179.png\",\"https://steemitimages.com/DQma4S9kqJYsmSQsugkS6Uzo4VXmagMgCMHhXBq2k5SVNMj/Titanfall-2-Screenshot-2.jpg\",\"https://steemitimages.com/DQmWCSfjEgyYTikimvsTEAxqC7sWrYm6PpuoTpt2fX3JS6e/Titanfall-2-Screenshot-3.jpg\",\"https://steemitimages.com/DQmYPmutpzdnW6Z4xCvasmEJ82W4CcN3wqtrYanf9GbYtsW/Titanfall-2-Screenshot-4.jpg\",\"https://steemitimages.com/DQmdWSVYjeM31CaeDHkP68trGkinQpohLdLoznBPsUXfu9v/Titanfall-2-Screenshot-5.jpg\",\"https://steemitimages.com/DQmf7WixScp7ejTZ38iNHw6PaFUpEfEF17n1cBDigi1GNY9/Titanfall-2-Screenshot-9.jpg\",\"https://steemitimages.com/DQmXqARx2KqBJw8hXF2RunVFFKPqXwjtFC6NaJXPFJgRTKt/Titanfall-2-Screenshot-10.jpg\",\"https://steemitimages.com/DQmVtG4MKN9Ktj2JVhpY4wPAQ1mL3N5rJgwnxuuwcZ8KVvp/Titanfall-2-Screenshot-11.jpg\",\"https://steemitimages.com/DQmVY7HSuEw2aCB5mFwfiS3MKsPjAK5A2a3cj4pDQFZzjG9/Titanfall-2-Screenshot-12.jpg\",\"https://steemitimages.com/DQmPXBFuSgnLzgBDGQyoqSgFkNdRAKzDEoFWVq8iJj5qbE4/Titanfall-2-Screenshot-13-1.jpg\",\"https://steemitimages.com/DQmehp6iyz1DrStDdUCLQYBFAqXQFKqE5X4zTQSkx4YQBtD/Titanfall-2-Screenshot-14.jpg\",\"https://steemitimages.com/DQmWBH8gZaAq3QE7DTw1n4uYbBB35tBJ58biETLbtzs83rT/Titanfall-2-Screenshot-16.jpg\",\"https://steemitimages.com/DQmQq8vevtb1H7tn1Pa4dTQi2UnHPE681WW2LtYg6ryt6Gr/Titanfall-2-Screenshot-17.jpg\",\"https://steemitimages.com/DQmabKHWHSHnDXoWRuEMTZQHNJFLff7VaMZ4UKGsiVXRMvV/Titanfall-2-Screenshot-18.jpg\",\"https://steemitimages.com/DQmTR8NJc3dyXnzH4RLdJryXHtQJXZndCkQaYNaZp7MowZT/Titanfall-2-Screenshot-19.jpg\",\"https://steemitimages.com/DQmWeyYtmtE3dshPWRFsX1ENJutFKPcXwgTmFFCuE9tPM2P/U5dqreQGcdJEeSuqLV59aXCKZWJpckM_1680x8400.png\",\"https://steemitimages.com/DQmYvBNkspmkUNqMwJrLz61sUJUcc6FLjeUbBFpqZNihHBg/DgpeOQ.png\"],\"links\":[\"https://wall.alphacoders.com/big.php?i=716179\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}",
"parent_author": "",
"parent_permlink": "gaming",
"permlink": "review-game-titanfall-2",
"title": "Review Game Titanfall 2"
}
],
"op_in_trx": 0,
"timestamp": "2018-03-16T13:59:06",
"trx_id": "57f09978f2320d1ed5cd8dc50fbc4998b1e76091",
"trx_in_block": 39,
"virtual_op": 0
}anomalyupvoted (1.00%) @irmapijanist / review-game-titanfall-22018/03/16 13:56:48
anomalyupvoted (1.00%) @irmapijanist / review-game-titanfall-2
2018/03/16 13:56:48
| author | irmapijanist |
| permlink | review-game-titanfall-2 |
| voter | anomaly |
| weight | 100 (1.00%) |
| Transaction Info | Block #20727243/Trx c3f33bb527010f544768ac26cbc8410bf9ddc243 |
View Raw JSON Data
{
"block": 20727243,
"op": [
"vote",
{
"author": "irmapijanist",
"permlink": "review-game-titanfall-2",
"voter": "anomaly",
"weight": 100
}
],
"op_in_trx": 0,
"timestamp": "2018-03-16T13:56:48",
"trx_id": "c3f33bb527010f544768ac26cbc8410bf9ddc243",
"trx_in_block": 10,
"virtual_op": 0
}irmapijanistupvoted (100.00%) @irmapijanist / review-game-titanfall-22018/03/16 13:44:48
irmapijanistupvoted (100.00%) @irmapijanist / review-game-titanfall-2
2018/03/16 13:44:48
| author | irmapijanist |
| permlink | review-game-titanfall-2 |
| voter | irmapijanist |
| weight | 10000 (100.00%) |
| Transaction Info | Block #20727003/Trx c547e58f223554941ac9725aa0b2d6fa2c94c53d |
View Raw JSON Data
{
"block": 20727003,
"op": [
"vote",
{
"author": "irmapijanist",
"permlink": "review-game-titanfall-2",
"voter": "irmapijanist",
"weight": 10000
}
],
"op_in_trx": 0,
"timestamp": "2018-03-16T13:44:48",
"trx_id": "c547e58f223554941ac9725aa0b2d6fa2c94c53d",
"trx_in_block": 32,
"virtual_op": 0
}irmapijanistpublished a new post: review-game-titanfall-22018/03/16 13:25:03
irmapijanistpublished a new post: review-game-titanfall-2
2018/03/16 13:25:03
| author | irmapijanist |
| body |  [SourceImage](https://wall.alphacoders.com/big.php?i=716179) Two years passed, and finally the sequel from Titanfall was released. Titanfall 2 is still carrying the FPS mechanism with acrobatic movement and supported by the presence of robust Titan robots. But will the same formula on Titanfall 2 last longer in the minds of its players? I can not promise that Titanfall 2 will still be played a lot of people in the next few months. However, this game clearly provides a very memorable experience for all players.  Essential essentials The most striking new thing in the Titanfall sequel is the presence of a single player campaign. Yes, you can enjoy a piece of the story from Titanfall's unique world through that mode. You will play as Jake Cooper in the Titanfall 2 campaign. He is a fighter of the Militia faction who is trying to become a Titan pilot for the liberation of his native land. In the midst of a battle against the IMC camp on the planet Typhon, Jake gets authorization to board the BT-7274 which is the Titan of the late Captain Lastimosa. Together with his new Titan, Jake must complete the Special Operations 217 mission to thwart the IMC's plan.  # Man and machine Although the plot sounds ordinary, the story in Titanfall 2 has a unique element that makes it very memorable. The relationship between Jake and BT feels very deep, not just between the pilot and the AI. The relationship of trust between Jake and BT grows with the challenges they face, similar to a pair of comrades in a war. The development of the story with the focus of the relationship between humans and machines seems quite rare in an FPS, and I must admit the theme is quite interesting. Unfortunately, it feels less satisfactory because the story presented is very short. In just six hours, you can complete the single player campaign in Titanfall 2.  The dialog selections also appear when the campaign takes place. Although making the story more interesting, I feel not too satisfied with the feature. The choice of dialog only gives different answers, but does not change the story line in the game. Jake also sounds like a soldier who tries too hard to appear as a casual man. Dialog that he catapulted sometimes feels too artificial and seem unnatural. BT, on the other hand, looks like a machine without expression. But the plain dialogue BT often makes me laugh to myself.  # Freedom of movement Titanfall 2 carries a non-generic FPS game. The battles happen quickly and you can perform various acrobatics moves quite easily. Movements such as wall runs, double jumps, and slides allow you to be free of the restrained maneuvers that exist in regular FPS games. The full action of adrenaline that you do while firing while performing various acrobatic movements can be executed very smoothly. However, these actions still feel realistic because you seem to still have weight when maneuvering.  # Challenges vary The enemy that you will face in Titanfall 2 is not limited to IMC campers only. You will also be faced with robotic android robots, wild alien creatures, and certainly the Titan robots. The enemy's variations obviously make you have to take different actions depending on the type you are facing. The game becomes more challenging when several types of enemies appear in one level.  # War between giants Speaking of Titan, you will be much more often faced with Titan when Jake was driving BT. As a Titan, BT equipped several types of heavy weapons that have high destructive power. The game screen will be filled with big explosions once you drive BT and destroy all the enemies. The transition from the first person's perspective and into the Titan's cockpit is a long-awaited experience. The game feels refreshed when the viewing angle changes. Animation into Titan's body also looks cool.  Even more cool, Respawn as the developer also adds a variety of small details when you're in the Titan cockpit. One of the things I like best is the appearance of enemy pilots when delivering ad-lib in the corner of the screen. Heard they try to intimidate or express fear when his Titan is destroyed making the battle arena livelier. It reminds me of various battle scenes in popular mecha anime.  Titanfall 2 single player mode also presents a battle against a fairly intense boss. Not only face Titan enemies who have dangerous weapons, you also have to pay attention to the battle area. An intense battle forces you to think strategically and not come forward attacking. If you make a mistake, not infrequently the bullet and missiles ready to hit freely. In fact, you can be unknowingly cornered at the edge of the battle area if you do not think carefully.  # Creative level design Speaking of the game area, the level in single player mode Titanfall 2 is very well designed. Variation of the area provided looks diverse. You will find wild woods full of cliffs to the inner area of the facility with futuristic design. Each level has a portion of platforming that is quite exciting and challenging. Thanks to the maneuvering ability that you can do, the jumping section of the chasm or the altitude move feels great fun and does not feel like a routine.  There is also one level that I think is very impressive in Titanfall 2 until I hope can be brought by Respawn to the next iteration. In that level, you are given the ability to move into the past to solve puzzles and avoid danger. For example, if a door can not open because it is broken in the present, then you have to move to the past first when the door is still working. Another example, you will use the ability to move time to run from one wall in the present to another wall in the past. Not only for platformers, the ability to move time can even be useful to face the enemy. With that ability, you will disappear from the enemy's view and reappear behind them to strike back.  # Old tools, excellent results Although Titanfall 2 worked on using the Source engine that can be spelled out a bit old-fashioned, visual in this game still looks fantastic. The game runs in 60 fps with a level of detail that looks quite astonishing. The design of the environment displayed is quite diverse. Each level has a contrasting theme from one place to another. The area will be filled with lush vegetation in one place and a rigid futuristic building elsewhere. The design of weapons and character equipment is also made very interesting. The shape is futuristic, but still recognizable and associated with technology that exist in today. # Fight together more exciting For multiplayer affairs, Titanfall 2 presents a much more game mode. One of the most popular new modes is Bounty Hunt. In Bounty Hunt mode, each camp must not only kill the enemy, but also defeat a certain NPC to earn money. The money will have to be deposited to the nearest bank machine that is open at certain times. At that moment the game becomes more tense, because both camps will fight each other to deposit money or steal money from other camps.   Outside of Bounty Hunt, other modes like Attrition, Team Deathmatch, and so on still feel standard like the previous iteration. Although the number of players in each game is very limited, it actually proved to make the game feel balanced. # Wider customization You can also customize the pilot and Titan. Weapons, equipment, to Titan's camouflage colors can be changed and adjusted. The available Titan also increases with the unique weapon capabilities of each. You can choose a particular class in Titanfall 2 to determine what specific equipment you can use. Skill can also be changed as your character level increases.  # More balanced Regarding the battle in multiplayer mode, Respawn made some adjustments in Titanfall 2 rather than its predecessor. Titan now has the equipment to drive out enemy pilots who try to drive it by using paralyzing gas. For the pilots, they now simply board the enemy Titan and take the battery that is attached to the robot's body to be able to defeat it. This adjustment made the Titan and pilot actions feel more supple than the previous series.  # Conclusion Is Titanfall 2 a better sequel to the first Titanfall? I think so. With more content, maintained gameplay, and the existence of a single player campaign that left a mark on your memory, Titanfall 2 is an FPS game you must play this year.  |
| json metadata | {"tags":["gaming","game","life"],"image":["https://steemitimages.com/DQmWZnS8m1DUSPJDm9BwB49VPmb9mDdCRe2xrv7r2Hw3b9X/716179.png","https://steemitimages.com/DQma4S9kqJYsmSQsugkS6Uzo4VXmagMgCMHhXBq2k5SVNMj/Titanfall-2-Screenshot-2.jpg","https://steemitimages.com/DQmWCSfjEgyYTikimvsTEAxqC7sWrYm6PpuoTpt2fX3JS6e/Titanfall-2-Screenshot-3.jpg","https://steemitimages.com/DQmYPmutpzdnW6Z4xCvasmEJ82W4CcN3wqtrYanf9GbYtsW/Titanfall-2-Screenshot-4.jpg","https://steemitimages.com/DQmdWSVYjeM31CaeDHkP68trGkinQpohLdLoznBPsUXfu9v/Titanfall-2-Screenshot-5.jpg","https://steemitimages.com/DQmf7WixScp7ejTZ38iNHw6PaFUpEfEF17n1cBDigi1GNY9/Titanfall-2-Screenshot-9.jpg","https://steemitimages.com/DQmXqARx2KqBJw8hXF2RunVFFKPqXwjtFC6NaJXPFJgRTKt/Titanfall-2-Screenshot-10.jpg","https://steemitimages.com/DQmVtG4MKN9Ktj2JVhpY4wPAQ1mL3N5rJgwnxuuwcZ8KVvp/Titanfall-2-Screenshot-11.jpg","https://steemitimages.com/DQmVY7HSuEw2aCB5mFwfiS3MKsPjAK5A2a3cj4pDQFZzjG9/Titanfall-2-Screenshot-12.jpg","https://steemitimages.com/DQmPXBFuSgnLzgBDGQyoqSgFkNdRAKzDEoFWVq8iJj5qbE4/Titanfall-2-Screenshot-13-1.jpg","https://steemitimages.com/DQmehp6iyz1DrStDdUCLQYBFAqXQFKqE5X4zTQSkx4YQBtD/Titanfall-2-Screenshot-14.jpg","https://steemitimages.com/DQmWBH8gZaAq3QE7DTw1n4uYbBB35tBJ58biETLbtzs83rT/Titanfall-2-Screenshot-16.jpg","https://steemitimages.com/DQmQq8vevtb1H7tn1Pa4dTQi2UnHPE681WW2LtYg6ryt6Gr/Titanfall-2-Screenshot-17.jpg","https://steemitimages.com/DQmabKHWHSHnDXoWRuEMTZQHNJFLff7VaMZ4UKGsiVXRMvV/Titanfall-2-Screenshot-18.jpg","https://steemitimages.com/DQmTR8NJc3dyXnzH4RLdJryXHtQJXZndCkQaYNaZp7MowZT/Titanfall-2-Screenshot-19.jpg","https://steemitimages.com/DQmYvBNkspmkUNqMwJrLz61sUJUcc6FLjeUbBFpqZNihHBg/DgpeOQ.png"],"links":["https://wall.alphacoders.com/big.php?i=716179"],"app":"steemit/0.1","format":"markdown"} |
| parent author | |
| parent permlink | gaming |
| permlink | review-game-titanfall-2 |
| title | Review Game Titanfall 2 |
| Transaction Info | Block #20726608/Trx 715116ad4ffbe1c6e54e2c824e011be90204c136 |
View Raw JSON Data
{
"block": 20726608,
"op": [
"comment",
{
"author": "irmapijanist",
"body": "\n\n[SourceImage](https://wall.alphacoders.com/big.php?i=716179)\n\nTwo years passed, and finally the sequel from Titanfall was released. Titanfall 2 is still carrying the FPS mechanism with acrobatic movement and supported by the presence of robust Titan robots. But will the same formula on Titanfall 2 last longer in the minds of its players?\n\nI can not promise that Titanfall 2 will still be played a lot of people in the next few months. However, this game clearly provides a very memorable experience for all players.\n\n\n\nEssential essentials\nThe most striking new thing in the Titanfall sequel is the presence of a single player campaign. Yes, you can enjoy a piece of the story from Titanfall's unique world through that mode.\n\nYou will play as Jake Cooper in the Titanfall 2 campaign. He is a fighter of the Militia faction who is trying to become a Titan pilot for the liberation of his native land.\n\nIn the midst of a battle against the IMC camp on the planet Typhon, Jake gets authorization to board the BT-7274 which is the Titan of the late Captain Lastimosa. Together with his new Titan, Jake must complete the Special Operations 217 mission to thwart the IMC's plan.\n\n\n\n# Man and machine\n\nAlthough the plot sounds ordinary, the story in Titanfall 2 has a unique element that makes it very memorable. The relationship between Jake and BT feels very deep, not just between the pilot and the AI.\n\nThe relationship of trust between Jake and BT grows with the challenges they face, similar to a pair of comrades in a war. The development of the story with the focus of the relationship between humans and machines seems quite rare in an FPS, and I must admit the theme is quite interesting.\n\nUnfortunately, it feels less satisfactory because the story presented is very short. In just six hours, you can complete the single player campaign in Titanfall 2.\n\n\n\nThe dialog selections also appear when the campaign takes place. Although making the story more interesting, I feel not too satisfied with the feature. The choice of dialog only gives different answers, but does not change the story line in the game.\n\nJake also sounds like a soldier who tries too hard to appear as a casual man. Dialog that he catapulted sometimes feels too artificial and seem unnatural. BT, on the other hand, looks like a machine without expression. But the plain dialogue BT often makes me laugh to myself.\n\n\n\n# Freedom of movement\n\nTitanfall 2 carries a non-generic FPS game. The battles happen quickly and you can perform various acrobatics moves quite easily. Movements such as wall runs, double jumps, and slides allow you to be free of the restrained maneuvers that exist in regular FPS games.\n\nThe full action of adrenaline that you do while firing while performing various acrobatic movements can be executed very smoothly. However, these actions still feel realistic because you seem to still have weight when maneuvering.\n\n\n\n# Challenges vary\n\nThe enemy that you will face in Titanfall 2 is not limited to IMC campers only. You will also be faced with robotic android robots, wild alien creatures, and certainly the Titan robots.\n\nThe enemy's variations obviously make you have to take different actions depending on the type you are facing. The game becomes more challenging when several types of enemies appear in one level.\n\n\n\n# War between giants\n\nSpeaking of Titan, you will be much more often faced with Titan when Jake was driving BT. As a Titan, BT equipped several types of heavy weapons that have high destructive power. The game screen will be filled with big explosions once you drive BT and destroy all the enemies.\n\nThe transition from the first person's perspective and into the Titan's cockpit is a long-awaited experience. The game feels refreshed when the viewing angle changes. Animation into Titan's body also looks cool.\n\n\n\nEven more cool, Respawn as the developer also adds a variety of small details when you're in the Titan cockpit. One of the things I like best is the appearance of enemy pilots when delivering ad-lib in the corner of the screen.\n\nHeard they try to intimidate or express fear when his Titan is destroyed making the battle arena livelier. It reminds me of various battle scenes in popular mecha anime.\n\n\n\nTitanfall 2 single player mode also presents a battle against a fairly intense boss. Not only face Titan enemies who have dangerous weapons, you also have to pay attention to the battle area.\n\nAn intense battle forces you to think strategically and not come forward attacking. If you make a mistake, not infrequently the bullet and missiles ready to hit freely. In fact, you can be unknowingly cornered at the edge of the battle area if you do not think carefully.\n\n\n\n# Creative level design\n\nSpeaking of the game area, the level in single player mode Titanfall 2 is very well designed. Variation of the area provided looks diverse. You will find wild woods full of cliffs to the inner area of the facility with futuristic design.\n\nEach level has a portion of platforming that is quite exciting and challenging. Thanks to the maneuvering ability that you can do, the jumping section of the chasm or the altitude move feels great fun and does not feel like a routine.\n\n\n\nThere is also one level that I think is very impressive in Titanfall 2 until I hope can be brought by Respawn to the next iteration. In that level, you are given the ability to move into the past to solve puzzles and avoid danger.\n\nFor example, if a door can not open because it is broken in the present, then you have to move to the past first when the door is still working. Another example, you will use the ability to move time to run from one wall in the present to another wall in the past.\n\nNot only for platformers, the ability to move time can even be useful to face the enemy. With that ability, you will disappear from the enemy's view and reappear behind them to strike back.\n\n\n\n# Old tools, excellent results\n\nAlthough Titanfall 2 worked on using the Source engine that can be spelled out a bit old-fashioned, visual in this game still looks fantastic. The game runs in 60 fps with a level of detail that looks quite astonishing.\n\nThe design of the environment displayed is quite diverse. Each level has a contrasting theme from one place to another. The area will be filled with lush vegetation in one place and a rigid futuristic building elsewhere.\n\nThe design of weapons and character equipment is also made very interesting. The shape is futuristic, but still recognizable and associated with technology that exist in today.\n\n# Fight together more exciting\n\nFor multiplayer affairs, Titanfall 2 presents a much more game mode. One of the most popular new modes is Bounty Hunt.\n\nIn Bounty Hunt mode, each camp must not only kill the enemy, but also defeat a certain NPC to earn money. The money will have to be deposited to the nearest bank machine that is open at certain times. At that moment the game becomes more tense, because both camps will fight each other to deposit money or steal money from other camps.\n\n\n\n\n\nOutside of Bounty Hunt, other modes like Attrition, Team Deathmatch, and so on still feel standard like the previous iteration. Although the number of players in each game is very limited, it actually proved to make the game feel balanced.\n\n# Wider customization\n\nYou can also customize the pilot and Titan. Weapons, equipment, to Titan's camouflage colors can be changed and adjusted. The available Titan also increases with the unique weapon capabilities of each.\n\nYou can choose a particular class in Titanfall 2 to determine what specific equipment you can use. Skill can also be changed as your character level increases.\n\n\n\n# More balanced\n\nRegarding the battle in multiplayer mode, Respawn made some adjustments in Titanfall 2 rather than its predecessor. Titan now has the equipment to drive out enemy pilots who try to drive it by using paralyzing gas.\n\nFor the pilots, they now simply board the enemy Titan and take the battery that is attached to the robot's body to be able to defeat it. This adjustment made the Titan and pilot actions feel more supple than the previous series.\n\n\n\n# Conclusion\n\nIs Titanfall 2 a better sequel to the first Titanfall? I think so. With more content, maintained gameplay, and the existence of a single player campaign that left a mark on your memory, Titanfall 2 is an FPS game you must play this year.\n\n",
"json_metadata": "{\"tags\":[\"gaming\",\"game\",\"life\"],\"image\":[\"https://steemitimages.com/DQmWZnS8m1DUSPJDm9BwB49VPmb9mDdCRe2xrv7r2Hw3b9X/716179.png\",\"https://steemitimages.com/DQma4S9kqJYsmSQsugkS6Uzo4VXmagMgCMHhXBq2k5SVNMj/Titanfall-2-Screenshot-2.jpg\",\"https://steemitimages.com/DQmWCSfjEgyYTikimvsTEAxqC7sWrYm6PpuoTpt2fX3JS6e/Titanfall-2-Screenshot-3.jpg\",\"https://steemitimages.com/DQmYPmutpzdnW6Z4xCvasmEJ82W4CcN3wqtrYanf9GbYtsW/Titanfall-2-Screenshot-4.jpg\",\"https://steemitimages.com/DQmdWSVYjeM31CaeDHkP68trGkinQpohLdLoznBPsUXfu9v/Titanfall-2-Screenshot-5.jpg\",\"https://steemitimages.com/DQmf7WixScp7ejTZ38iNHw6PaFUpEfEF17n1cBDigi1GNY9/Titanfall-2-Screenshot-9.jpg\",\"https://steemitimages.com/DQmXqARx2KqBJw8hXF2RunVFFKPqXwjtFC6NaJXPFJgRTKt/Titanfall-2-Screenshot-10.jpg\",\"https://steemitimages.com/DQmVtG4MKN9Ktj2JVhpY4wPAQ1mL3N5rJgwnxuuwcZ8KVvp/Titanfall-2-Screenshot-11.jpg\",\"https://steemitimages.com/DQmVY7HSuEw2aCB5mFwfiS3MKsPjAK5A2a3cj4pDQFZzjG9/Titanfall-2-Screenshot-12.jpg\",\"https://steemitimages.com/DQmPXBFuSgnLzgBDGQyoqSgFkNdRAKzDEoFWVq8iJj5qbE4/Titanfall-2-Screenshot-13-1.jpg\",\"https://steemitimages.com/DQmehp6iyz1DrStDdUCLQYBFAqXQFKqE5X4zTQSkx4YQBtD/Titanfall-2-Screenshot-14.jpg\",\"https://steemitimages.com/DQmWBH8gZaAq3QE7DTw1n4uYbBB35tBJ58biETLbtzs83rT/Titanfall-2-Screenshot-16.jpg\",\"https://steemitimages.com/DQmQq8vevtb1H7tn1Pa4dTQi2UnHPE681WW2LtYg6ryt6Gr/Titanfall-2-Screenshot-17.jpg\",\"https://steemitimages.com/DQmabKHWHSHnDXoWRuEMTZQHNJFLff7VaMZ4UKGsiVXRMvV/Titanfall-2-Screenshot-18.jpg\",\"https://steemitimages.com/DQmTR8NJc3dyXnzH4RLdJryXHtQJXZndCkQaYNaZp7MowZT/Titanfall-2-Screenshot-19.jpg\",\"https://steemitimages.com/DQmYvBNkspmkUNqMwJrLz61sUJUcc6FLjeUbBFpqZNihHBg/DgpeOQ.png\"],\"links\":[\"https://wall.alphacoders.com/big.php?i=716179\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}",
"parent_author": "",
"parent_permlink": "gaming",
"permlink": "review-game-titanfall-2",
"title": "Review Game Titanfall 2"
}
],
"op_in_trx": 0,
"timestamp": "2018-03-16T13:25:03",
"trx_id": "715116ad4ffbe1c6e54e2c824e011be90204c136",
"trx_in_block": 50,
"virtual_op": 0
}irmapijanistupdated their account properties2018/03/16 11:44:06
irmapijanistupdated their account properties
2018/03/16 11:44:06
| account | irmapijanist |
| json metadata | {"profile":{"location":"French - Luxembourg","profile_image":"https://s13.postimg.org/f021b4r1j/Screenshot_5.png","cover_image":"https://s18.postimg.org/szp44e2jt/cover_steemit1.jpg"}} |
| memo key | STM6GKmd6dv1mkTj6nKZQ4jjhCjQjP8GcD2J2AEXVHSi9cv5pZnAD |
| Transaction Info | Block #20724589/Trx 977f6fb5476435bf9004b0906067de02962e6c5d |
View Raw JSON Data
{
"block": 20724589,
"op": [
"account_update",
{
"account": "irmapijanist",
"json_metadata": "{\"profile\":{\"location\":\"French - Luxembourg\",\"profile_image\":\"https://s13.postimg.org/f021b4r1j/Screenshot_5.png\",\"cover_image\":\"https://s18.postimg.org/szp44e2jt/cover_steemit1.jpg\"}}",
"memo_key": "STM6GKmd6dv1mkTj6nKZQ4jjhCjQjP8GcD2J2AEXVHSi9cv5pZnAD"
}
],
"op_in_trx": 0,
"timestamp": "2018-03-16T11:44:06",
"trx_id": "977f6fb5476435bf9004b0906067de02962e6c5d",
"trx_in_block": 5,
"virtual_op": 0
}hr1upvoted (0.02%) @irmapijanist / heir-of-light-android-os-game-review2018/03/16 00:56:36
hr1upvoted (0.02%) @irmapijanist / heir-of-light-android-os-game-review
2018/03/16 00:56:36
| author | irmapijanist |
| permlink | heir-of-light-android-os-game-review |
| voter | hr1 |
| weight | 2 (0.02%) |
| Transaction Info | Block #20711647/Trx 26ef1a585cc0a858ee1883b2b4b0823cf02fadcc |
View Raw JSON Data
{
"block": 20711647,
"op": [
"vote",
{
"author": "irmapijanist",
"permlink": "heir-of-light-android-os-game-review",
"voter": "hr1",
"weight": 2
}
],
"op_in_trx": 0,
"timestamp": "2018-03-16T00:56:36",
"trx_id": "26ef1a585cc0a858ee1883b2b4b0823cf02fadcc",
"trx_in_block": 40,
"virtual_op": 0
}yuyuartupvoted (100.00%) @irmapijanist / heir-of-light-android-os-game-review2018/03/16 00:55:33
yuyuartupvoted (100.00%) @irmapijanist / heir-of-light-android-os-game-review
2018/03/16 00:55:33
| author | irmapijanist |
| permlink | heir-of-light-android-os-game-review |
| voter | yuyuart |
| weight | 10000 (100.00%) |
| Transaction Info | Block #20711626/Trx b7e24845121800122a1fdeb570f882b54f536af5 |
View Raw JSON Data
{
"block": 20711626,
"op": [
"vote",
{
"author": "irmapijanist",
"permlink": "heir-of-light-android-os-game-review",
"voter": "yuyuart",
"weight": 10000
}
],
"op_in_trx": 0,
"timestamp": "2018-03-16T00:55:33",
"trx_id": "b7e24845121800122a1fdeb570f882b54f536af5",
"trx_in_block": 25,
"virtual_op": 0
}irmapijanistupvoted (100.00%) @karinaayu / armored-warfare-assault-android-os-game-review2018/03/16 00:41:36
irmapijanistupvoted (100.00%) @karinaayu / armored-warfare-assault-android-os-game-review
2018/03/16 00:41:36
| author | karinaayu |
| permlink | armored-warfare-assault-android-os-game-review |
| voter | irmapijanist |
| weight | 10000 (100.00%) |
| Transaction Info | Block #20711348/Trx 8b3799381f8a88cd0de68415f8b9c4440559d92f |
View Raw JSON Data
{
"block": 20711348,
"op": [
"vote",
{
"author": "karinaayu",
"permlink": "armored-warfare-assault-android-os-game-review",
"voter": "irmapijanist",
"weight": 10000
}
],
"op_in_trx": 0,
"timestamp": "2018-03-16T00:41:36",
"trx_id": "8b3799381f8a88cd0de68415f8b9c4440559d92f",
"trx_in_block": 41,
"virtual_op": 0
}irmapijanistpublished a new post: heir-of-light-android-os-game-review2018/03/16 00:26:39
irmapijanistpublished a new post: heir-of-light-android-os-game-review
2018/03/16 00:26:39
| author | irmapijanist |
| body |  [SourceImage](https://www.google.co.id/search?q=Heir+of+Light&dcr=0&source=lnms&tbm=isch&sa=X&ved=0ahUKEwjR4ounwu_ZAhWJLI8KHbjTBUYQ_AUICigB&biw=1366&bih=637#imgrc=AfBedhjr70ipJM:) Heir of Light presents a gothic style environment with a unique storyline as well as a variety of interesting features! Check out his review here. RPG Fantasy GAMEVIL with a gothic theme that has been highly anticipated finally officially released on March 7, 2018 ago. Gamers can now enter the dark world of Heir of Light - the second game of collaboration with FUNFLOW GAMEVIL, following their success through Critica: The White Knights. This new game looks promising strong impression for gamers with its dark gothic concept. Heir of Light will bring gamers across the dark world with no hope due to Dark Blood that affect him for so long. You are the only light in the world, and the answer to a country that is too tired to fight. Stunning graphics, stunning orchestral music and storyline all support dark nuances that are rarely encountered in other games! In addition to graphics and dark themes in the game, Heir of Light also has a variety of excellent features in it, which is guaranteed to make you addicted! Well before delivering the results of a review of Duniagames about this game, you'll want to know what are the cool features that exist in the game Heir of Light.  [ImageSource](https://www.google.co.id/search?q=Heir+of+Light&dcr=0&source=lnms&tbm=isch&sa=X&ved=0ahUKEwjR4ounwu_ZAhWJLI8KHbjTBUYQ_AUICigB&biw=1366&bih=637#imgrc=bamSj_n7tzew6M:) Here are the features that are featured in the Heir of Light game: Master & Servant Collection  [ImageSource](https://www.google.co.id/search?q=Heir+of+Light&dcr=0&source=lnms&tbm=isch&sa=X&ved=0ahUKEwjR4ounwu_ZAhWJLI8KHbjTBUYQ_AUICigB&biw=1366&bih=637#imgrc=Vvye96k6DjhuCM:) In playing Heir of light, you will play 5 Master and hundreds Servant who accompany your master. These five Masters will be able to use everything because one by one will open when reaching a certain level of account. As for Servant you can get it by doing summon. # The combination of RPG and Strategy  Although carrying the RPG genre, in playing the game Heir of Light you also have to prepare a strategy to pass through various obstacles that your opponent. You have to choose between destroying towers or bosses first, and you have to install the right team composition and elements to fight the boss. # Runesystem  [SourceImage](https://www.google.co.id/search?dcr=0&biw=1366&bih=637&tbm=isch&sa=1&ei=lAarWqPPJsX0vAT1mZOQBw&q=Heir+of+Light+rune&oq=Heir+of+Light+rune&gs_l=psy-ab.3...894168.897039.0.897704.5.5.0.0.0.0.183.710.0j5.5.0....0...1c.1.64.psy-ab..0.2.287...0j0i30k1j0i24k1.0.K0kxGMg35NM#imgrc=iM_KVdVoMeSnFM:) Rune is one of the most interesting systems in Heir of Light. With this rune system, you can make your character stronger in accordance with the need to increase the attributes you want! # Sistem Upgrade One of the must-have features in RPG games is also present in Heir of Light, an upgrade system. With this upgrade system, you can increase your Master or Servant level. In addition to level upgrades, the upgrade system will also improve the star quality of the Master and Servant and certainly be evolved! # PVP  Well this is one feature that will make you compete to be stronger among other players, PVP! Strengthen your Master and Servant to conquer other players in the PVP arena! But you must remember, the element possessed Master and Servant also very influential determine your victory in PVP arena. # Various Events and Quest! Like other games, Gamevil consistently presents a variety of events at Heir of Light; there are daily events, weekly, and also special events. In addition there is also a quest that provides rewards equivalent to the event! Initially you have to choose one of the 5 existing Master. Each Master has different abilities and elements. When playing you must master the element and also the role of the Master and choose the Servant that matches the needs of your team; Do not let the tanks all, all dps, or even all healer. Next thing you must master is the rune system in Heir of Light. If you borrow experience from pre-existing RPG games, you can copy Rune's system in Summoners War! Pair the matching rune with the role of each character. Also make sure your rune has enough amount to activate additional effects! Heir of Light will 'force' you guys do grinding, but do not be afraid, the energy in this game is very abundant! There are from daily events and quests in the game, and certainly can be purchased at the store. The strongest basic character you have, it will not be strong if you do not upgrade, grinding, paired Rune, and also do evolution! # So many game reviews from me hopefully can be useful please try it in guaranteed exciting. <center></center> # <center>@irmapijanist</center> |
| json metadata | {"tags":["gaming","game"],"users":["irmapijanist"],"image":["https://steemitimages.com/DQmTFNFP8Ymh6eCTMZz2BYi3gu7eT7cBqrSGdVWZ8YxAX2k/AW-Assault-S-3-958x539.jpg","https://steemitimages.com/DQmS69rE7SC3qbhUzxspQTpGaf7yRGHoxikNbUD9aT6f4KW/4_kkb8.jpg","https://steemitimages.com/DQmS7U8CavRZ7WspaC5ruYfcFy2vfdxAxYJEuJ7RjWo4guU/Heir-of-Light-Gameplay-4.jpg","https://steemitimages.com/DQmeV1VSLQ6YM1RUUdSPVjzrK8tU96wZkHk2arJGx4e4GtC/unnamed.png","https://steemitimages.com/DQmdhRMzBuGyM8oxtpxnGpX6p2HRZfik4h7JXy2okkf57u2/xgneqk7hb7by.png","https://steemitimages.com/DQmZ2Nr9EXhSRbTHQS1Tb2ZA3AJnEEFK3hGJCoFesU6cWP8/Screenshot_1.png","https://steemitimages.com/DQmYvBNkspmkUNqMwJrLz61sUJUcc6FLjeUbBFpqZNihHBg/DgpeOQ.png"],"links":["https://www.google.co.id/search?q=Heir+of+Light&dcr=0&source=lnms&tbm=isch&sa=X&ved=0ahUKEwjR4ounwu_ZAhWJLI8KHbjTBUYQ_AUICigB&biw=1366&bih=637#imgrc=AfBedhjr70ipJM:","https://www.google.co.id/search?q=Heir+of+Light&dcr=0&source=lnms&tbm=isch&sa=X&ved=0ahUKEwjR4ounwu_ZAhWJLI8KHbjTBUYQ_AUICigB&biw=1366&bih=637#imgrc=bamSj_n7tzew6M:","https://www.google.co.id/search?q=Heir+of+Light&dcr=0&source=lnms&tbm=isch&sa=X&ved=0ahUKEwjR4ounwu_ZAhWJLI8KHbjTBUYQ_AUICigB&biw=1366&bih=637#imgrc=Vvye96k6DjhuCM:","https://www.google.co.id/search?dcr=0&biw=1366&bih=637&tbm=isch&sa=1&ei=lAarWqPPJsX0vAT1mZOQBw&q=Heir+of+Light+rune&oq=Heir+of+Light+rune&gs_l=psy-ab.3...894168.897039.0.897704.5.5.0.0.0.0.183.710.0j5.5.0....0...1c.1.64.psy-ab..0.2.287...0j0i30k1j0i24k1.0.K0kxGMg35NM#imgrc=iM_KVdVoMeSnFM:"],"app":"steemit/0.1","format":"markdown"} |
| parent author | |
| parent permlink | gaming |
| permlink | heir-of-light-android-os-game-review |
| title | Heir of Light (ANDROID OS GAME REVIEW) |
| Transaction Info | Block #20711049/Trx cbdff492e67e4b82e996f81df42064364ef1a8d1 |
View Raw JSON Data
{
"block": 20711049,
"op": [
"comment",
{
"author": "irmapijanist",
"body": "\n\n[SourceImage](https://www.google.co.id/search?q=Heir+of+Light&dcr=0&source=lnms&tbm=isch&sa=X&ved=0ahUKEwjR4ounwu_ZAhWJLI8KHbjTBUYQ_AUICigB&biw=1366&bih=637#imgrc=AfBedhjr70ipJM:)\n\nHeir of Light presents a gothic style environment with a unique storyline as well as a variety of interesting features! Check out his review here.\n\nRPG Fantasy GAMEVIL with a gothic theme that has been highly anticipated finally officially released on March 7, 2018 ago. Gamers can now enter the dark world of Heir of Light - the second game of collaboration with FUNFLOW GAMEVIL, following their success through Critica: The White Knights.\n\nThis new game looks promising strong impression for gamers with its dark gothic concept. Heir of Light will bring gamers across the dark world with no hope due to Dark Blood that affect him for so long. You are the only light in the world, and the answer to a country that is too tired to fight.\n\nStunning graphics, stunning orchestral music and storyline all support dark nuances that are rarely encountered in other games! In addition to graphics and dark themes in the game, Heir of Light also has a variety of excellent features in it, which is guaranteed to make you addicted! Well before delivering the results of a review of Duniagames about this game, you'll want to know what are the cool features that exist in the game Heir of Light.\n\n\n[ImageSource](https://www.google.co.id/search?q=Heir+of+Light&dcr=0&source=lnms&tbm=isch&sa=X&ved=0ahUKEwjR4ounwu_ZAhWJLI8KHbjTBUYQ_AUICigB&biw=1366&bih=637#imgrc=bamSj_n7tzew6M:)\n\nHere are the features that are featured in the Heir of Light game:\nMaster & Servant Collection\n\n\n\n[ImageSource](https://www.google.co.id/search?q=Heir+of+Light&dcr=0&source=lnms&tbm=isch&sa=X&ved=0ahUKEwjR4ounwu_ZAhWJLI8KHbjTBUYQ_AUICigB&biw=1366&bih=637#imgrc=Vvye96k6DjhuCM:)\n\nIn playing Heir of light, you will play 5 Master and hundreds Servant who accompany your master. These five Masters will be able to use everything because one by one will open when reaching a certain level of account. As for Servant you can get it by doing summon.\n\n# The combination of RPG and Strategy\n\n\n\nAlthough carrying the RPG genre, in playing the game Heir of Light you also have to prepare a strategy to pass through various obstacles that your opponent. You have to choose between destroying towers or bosses first, and you have to install the right team composition and elements to fight the boss.\n\n# Runesystem\n\n\n\n[SourceImage](https://www.google.co.id/search?dcr=0&biw=1366&bih=637&tbm=isch&sa=1&ei=lAarWqPPJsX0vAT1mZOQBw&q=Heir+of+Light+rune&oq=Heir+of+Light+rune&gs_l=psy-ab.3...894168.897039.0.897704.5.5.0.0.0.0.183.710.0j5.5.0....0...1c.1.64.psy-ab..0.2.287...0j0i30k1j0i24k1.0.K0kxGMg35NM#imgrc=iM_KVdVoMeSnFM:)\n\nRune is one of the most interesting systems in Heir of Light. With this rune system, you can make your character stronger in accordance with the need to increase the attributes you want!\n\n# Sistem Upgrade\n\nOne of the must-have features in RPG games is also present in Heir of Light, an upgrade system. With this upgrade system, you can increase your Master or Servant level. In addition to level upgrades, the upgrade system will also improve the star quality of the Master and Servant and certainly be evolved!\n\n# PVP\n\n\n\nWell this is one feature that will make you compete to be stronger among other players, PVP! Strengthen your Master and Servant to conquer other players in the PVP arena! But you must remember, the element possessed Master and Servant also very influential determine your victory in PVP arena.\n\n# Various Events and Quest!\n\nLike other games, Gamevil consistently presents a variety of events at Heir of Light; there are daily events, weekly, and also special events. In addition there is also a quest that provides rewards equivalent to the event!\n\nInitially you have to choose one of the 5 existing Master. Each Master has different abilities and elements. When playing you must master the element and also the role of the Master and choose the Servant that matches the needs of your team; Do not let the tanks all, all dps, or even all healer.\n\nNext thing you must master is the rune system in Heir of Light. If you borrow experience from pre-existing RPG games, you can copy Rune's system in Summoners War! Pair the matching rune with the role of each character. Also make sure your rune has enough amount to activate additional effects!\n\nHeir of Light will 'force' you guys do grinding, but do not be afraid, the energy in this game is very abundant! There are from daily events and quests in the game, and certainly can be purchased at the store. The strongest basic character you have, it will not be strong if you do not upgrade, grinding, paired Rune, and also do evolution!\n\n# So many game reviews from me hopefully can be useful please try it in guaranteed exciting.\n\n<center></center>\n\n# <center>@irmapijanist</center>",
"json_metadata": "{\"tags\":[\"gaming\",\"game\"],\"users\":[\"irmapijanist\"],\"image\":[\"https://steemitimages.com/DQmTFNFP8Ymh6eCTMZz2BYi3gu7eT7cBqrSGdVWZ8YxAX2k/AW-Assault-S-3-958x539.jpg\",\"https://steemitimages.com/DQmS69rE7SC3qbhUzxspQTpGaf7yRGHoxikNbUD9aT6f4KW/4_kkb8.jpg\",\"https://steemitimages.com/DQmS7U8CavRZ7WspaC5ruYfcFy2vfdxAxYJEuJ7RjWo4guU/Heir-of-Light-Gameplay-4.jpg\",\"https://steemitimages.com/DQmeV1VSLQ6YM1RUUdSPVjzrK8tU96wZkHk2arJGx4e4GtC/unnamed.png\",\"https://steemitimages.com/DQmdhRMzBuGyM8oxtpxnGpX6p2HRZfik4h7JXy2okkf57u2/xgneqk7hb7by.png\",\"https://steemitimages.com/DQmZ2Nr9EXhSRbTHQS1Tb2ZA3AJnEEFK3hGJCoFesU6cWP8/Screenshot_1.png\",\"https://steemitimages.com/DQmYvBNkspmkUNqMwJrLz61sUJUcc6FLjeUbBFpqZNihHBg/DgpeOQ.png\"],\"links\":[\"https://www.google.co.id/search?q=Heir+of+Light&dcr=0&source=lnms&tbm=isch&sa=X&ved=0ahUKEwjR4ounwu_ZAhWJLI8KHbjTBUYQ_AUICigB&biw=1366&bih=637#imgrc=AfBedhjr70ipJM:\",\"https://www.google.co.id/search?q=Heir+of+Light&dcr=0&source=lnms&tbm=isch&sa=X&ved=0ahUKEwjR4ounwu_ZAhWJLI8KHbjTBUYQ_AUICigB&biw=1366&bih=637#imgrc=bamSj_n7tzew6M:\",\"https://www.google.co.id/search?q=Heir+of+Light&dcr=0&source=lnms&tbm=isch&sa=X&ved=0ahUKEwjR4ounwu_ZAhWJLI8KHbjTBUYQ_AUICigB&biw=1366&bih=637#imgrc=Vvye96k6DjhuCM:\",\"https://www.google.co.id/search?dcr=0&biw=1366&bih=637&tbm=isch&sa=1&ei=lAarWqPPJsX0vAT1mZOQBw&q=Heir+of+Light+rune&oq=Heir+of+Light+rune&gs_l=psy-ab.3...894168.897039.0.897704.5.5.0.0.0.0.183.710.0j5.5.0....0...1c.1.64.psy-ab..0.2.287...0j0i30k1j0i24k1.0.K0kxGMg35NM#imgrc=iM_KVdVoMeSnFM:\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}",
"parent_author": "",
"parent_permlink": "gaming",
"permlink": "heir-of-light-android-os-game-review",
"title": "Heir of Light (ANDROID OS GAME REVIEW)"
}
],
"op_in_trx": 0,
"timestamp": "2018-03-16T00:26:39",
"trx_id": "cbdff492e67e4b82e996f81df42064364ef1a8d1",
"trx_in_block": 18,
"virtual_op": 0
}zapplupvoted (0.50%) @irmapijanist / the-art2018/03/10 23:12:30
zapplupvoted (0.50%) @irmapijanist / the-art
2018/03/10 23:12:30
| author | irmapijanist |
| permlink | the-art |
| voter | zappl |
| weight | 50 (0.50%) |
| Transaction Info | Block #20565767/Trx 66a1a8cc00a5d821a3b9d27346d61e5d174a71ca |
View Raw JSON Data
{
"block": 20565767,
"op": [
"vote",
{
"author": "irmapijanist",
"permlink": "the-art",
"voter": "zappl",
"weight": 50
}
],
"op_in_trx": 0,
"timestamp": "2018-03-10T23:12:30",
"trx_id": "66a1a8cc00a5d821a3b9d27346d61e5d174a71ca",
"trx_in_block": 23,
"virtual_op": 0
}irmapijanistupdated options for the-art2018/03/10 22:43:42
irmapijanistupdated options for the-art
2018/03/10 22:43:42
| allow curation rewards | true |
| allow votes | true |
| author | irmapijanist |
| extensions | [[0,{"beneficiaries":[{"account":"zappl","weight":1500}]}]] |
| max accepted payout | 1000000.000 SBD |
| percent steem dollars | 10000 |
| permlink | the-art |
| Transaction Info | Block #20565193/Trx 4e4d542bd0c2c4c50b230c3e3182d3ffde32dfb4 |
View Raw JSON Data
{
"block": 20565193,
"op": [
"comment_options",
{
"allow_curation_rewards": true,
"allow_votes": true,
"author": "irmapijanist",
"extensions": [
[
0,
{
"beneficiaries": [
{
"account": "zappl",
"weight": 1500
}
]
}
]
],
"max_accepted_payout": "1000000.000 SBD",
"percent_steem_dollars": 10000,
"permlink": "the-art"
}
],
"op_in_trx": 0,
"timestamp": "2018-03-10T22:43:42",
"trx_id": "4e4d542bd0c2c4c50b230c3e3182d3ffde32dfb4",
"trx_in_block": 24,
"virtual_op": 0
}irmapijanistpublished a new post: the-art2018/03/10 22:43:39
irmapijanistpublished a new post: the-art
2018/03/10 22:43:39
| author | irmapijanist |
| body | <div class="container-fluid pad_10"><div class="col-md-12 pad_zero "><p class="text-left fon_text" style="font-size:1em;">Inspirations moment</p><center><img src="https://s3-us-west-1.amazonaws.com/zapplweb%2FpostImage/zapplPostImage1520721790837.jpeg" class="img-responsive" width="100%" height="auto"></center></div></div> |
| json metadata | {"tags":["zappl"],"image":["https://s3-us-west-1.amazonaws.com/zapplweb%2FpostImage/zapplPostImage1520721790837.jpeg"],"app":"zappl/0.1","format":"html"} |
| parent author | |
| parent permlink | zappl |
| permlink | the-art |
| title | The art |
| Transaction Info | Block #20565192/Trx 83c9517865171b55439be4736daec664e92ac1dc |
View Raw JSON Data
{
"block": 20565192,
"op": [
"comment",
{
"author": "irmapijanist",
"body": "<div class=\"container-fluid pad_10\"><div class=\"col-md-12 pad_zero \"><p class=\"text-left fon_text\" style=\"font-size:1em;\">Inspirations moment</p><center><img src=\"https://s3-us-west-1.amazonaws.com/zapplweb%2FpostImage/zapplPostImage1520721790837.jpeg\" class=\"img-responsive\" width=\"100%\" height=\"auto\"></center></div></div>",
"json_metadata": "{\"tags\":[\"zappl\"],\"image\":[\"https://s3-us-west-1.amazonaws.com/zapplweb%2FpostImage/zapplPostImage1520721790837.jpeg\"],\"app\":\"zappl/0.1\",\"format\":\"html\"}",
"parent_author": "",
"parent_permlink": "zappl",
"permlink": "the-art",
"title": "The art"
}
],
"op_in_trx": 0,
"timestamp": "2018-03-10T22:43:39",
"trx_id": "83c9517865171b55439be4736daec664e92ac1dc",
"trx_in_block": 25,
"virtual_op": 0
}2018/03/09 10:13:48
2018/03/09 10:13:48
| author | yuyuart |
| permlink | i-toldem-to-buy-bitcoin-and-he-said-his-financial-advisor-advised-him-not-to-zg1hbmlh-fvkfe |
| voter | irmapijanist |
| weight | 10000 (100.00%) |
| Transaction Info | Block #20521493/Trx f03c411ef9ad3ae3cecc7016c27e0611bc8ac455 |
View Raw JSON Data
{
"block": 20521493,
"op": [
"vote",
{
"author": "yuyuart",
"permlink": "i-toldem-to-buy-bitcoin-and-he-said-his-financial-advisor-advised-him-not-to-zg1hbmlh-fvkfe",
"voter": "irmapijanist",
"weight": 10000
}
],
"op_in_trx": 0,
"timestamp": "2018-03-09T10:13:48",
"trx_id": "f03c411ef9ad3ae3cecc7016c27e0611bc8ac455",
"trx_in_block": 24,
"virtual_op": 0
}Manabar
Voting Power100.00%
Downvote Power100.00%
Resource Credits100.00%
Reputation Progress3.62%
{
"voting_manabar": {
"current_mana": "8143659806",
"last_update_time": 1779067848
},
"downvote_manabar": {
"current_mana": 2035914951,
"last_update_time": 1779067848
},
"rc_account": {
"account": "irmapijanist",
"max_rc": "10164408779",
"max_rc_creation_adjustment": {
"amount": "2020748973",
"nai": "@@000000037",
"precision": 6
},
"rc_manabar": {
"current_mana": "10164408779",
"last_update_time": 1779067848
}
}
}Account Metadata
| POSTING JSON METADATA | |
| profile | {"location":"French - Luxembourg","profile_image":"https://s13.postimg.org/f021b4r1j/Screenshot_5.png","cover_image":"https://s18.postimg.org/szp44e2jt/cover_steemit1.jpg"} |
| JSON METADATA | |
| profile | {"location":"French - Luxembourg","profile_image":"https://s13.postimg.org/f021b4r1j/Screenshot_5.png","cover_image":"https://s18.postimg.org/szp44e2jt/cover_steemit1.jpg"} |
{
"posting_json_metadata": {
"profile": {
"location": "French - Luxembourg",
"profile_image": "https://s13.postimg.org/f021b4r1j/Screenshot_5.png",
"cover_image": "https://s18.postimg.org/szp44e2jt/cover_steemit1.jpg"
}
},
"json_metadata": {
"profile": {
"location": "French - Luxembourg",
"profile_image": "https://s13.postimg.org/f021b4r1j/Screenshot_5.png",
"cover_image": "https://s18.postimg.org/szp44e2jt/cover_steemit1.jpg"
}
}
}Auth Keys
Owner
Single Signature
Public Keys
STM7d3dHRWg4cWWdsY7THegARAU63nXd9np2oD7YPrRVnZG5z6mNq1/1
Active
Single Signature
Public Keys
STM8N82agCm7jtA1QaCw9fxD89zX8NF68FEthWRYuEDkW7D2N12yd1/1
Posting
Single Signature
Public Keys
STM5Gp5jLeiLqdJpZxRFhRFfFZNHwwe4d8fhZsUqK3zMBpz2bWRSA1/1
App Permissions
@utopian.app1/1
Memo
STM6GKmd6dv1mkTj6nKZQ4jjhCjQjP8GcD2J2AEXVHSi9cv5pZnAD
{
"owner": {
"account_auths": [],
"key_auths": [
[
"STM7d3dHRWg4cWWdsY7THegARAU63nXd9np2oD7YPrRVnZG5z6mNq",
1
]
],
"weight_threshold": 1
},
"active": {
"account_auths": [],
"key_auths": [
[
"STM8N82agCm7jtA1QaCw9fxD89zX8NF68FEthWRYuEDkW7D2N12yd",
1
]
],
"weight_threshold": 1
},
"posting": {
"account_auths": [
[
"utopian.app",
1
]
],
"key_auths": [
[
"STM5Gp5jLeiLqdJpZxRFhRFfFZNHwwe4d8fhZsUqK3zMBpz2bWRSA",
1
]
],
"weight_threshold": 1
},
"memo": "STM6GKmd6dv1mkTj6nKZQ4jjhCjQjP8GcD2J2AEXVHSi9cv5pZnAD"
}Witness Votes
0 / 30
No active witness votes.
[]