Skip to content

Commit 9bff7f0

Browse files
committed
Add example using getAsync and ArrayAdapter
1 parent e42d325 commit 9bff7f0

File tree

6 files changed

+1377
-5
lines changed

6 files changed

+1377
-5
lines changed

src/AndroidClient/app/app.iml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,8 +86,10 @@
8686
<orderEntry type="jdk" jdkName="Android API 21 Platform" jdkType="Android SDK" />
8787
<orderEntry type="sourceFolder" forTests="false" />
8888
<orderEntry type="library" exported="" name="appcompat-v7-21.0.3" level="project" />
89+
<orderEntry type="library" exported="" name="gson-2.3.1" level="project" />
8990
<orderEntry type="library" exported="" name="support-v4-21.0.3" level="project" />
9091
<orderEntry type="library" exported="" name="support-annotations-21.0.3" level="project" />
92+
<orderEntry type="module" module-name="client" exported="" />
9193
</component>
9294
</module>
9395

src/AndroidClient/app/build.gradle

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ android {
2020
}
2121

2222
dependencies {
23-
compile fileTree(dir: 'libs', include: ['*.jar'])
23+
compile fileTree(include: ['*.jar'], dir: 'libs')
2424
compile 'com.android.support:appcompat-v7:21.0.3'
25+
compile project(':client')
2526
}

src/AndroidClient/app/src/main/java/servicestack/net/androidclient/MainActivity.java

Lines changed: 32 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,16 +4,47 @@
44
import android.os.Bundle;
55
import android.view.Menu;
66
import android.view.MenuItem;
7+
import android.widget.ArrayAdapter;
8+
import android.widget.ListView;
79

10+
import net.servicestack.android.AndroidServiceClient;
11+
import net.servicestack.client.AsyncResult;
12+
import net.servicestack.client.Utils;
13+
14+
import java.util.ArrayList;
15+
import servicestack.net.androidclient.techstacksdtos.*;
16+
import static net.servicestack.client.Func.*;
817

918
public class MainActivity extends ActionBarActivity {
1019

20+
AndroidServiceClient client = new AndroidServiceClient("http://techstacks.io");
21+
1122
@Override
1223
protected void onCreate(Bundle savedInstanceState) {
1324
super.onCreate(savedInstanceState);
1425
setContentView(R.layout.activity_main);
15-
}
1626

27+
final ListView lstResults = (ListView) findViewById(R.id.lstResults);
28+
29+
final MainActivity self = this;
30+
client.getAsync(new AppOverview(), new AsyncResult<AppOverviewResponse>() {
31+
@Override
32+
public void success(AppOverviewResponse response) {
33+
ArrayList<String> topTechs = map(response.getTopTechnologies(), new Function<TechnologyInfo, String>() {
34+
@Override
35+
public String apply(TechnologyInfo x) {
36+
return x.getName() + " (" + x.getStacksCount() + ")";
37+
}
38+
});
39+
40+
ArrayAdapter<String> adapter = new ArrayAdapter<>(self,
41+
android.R.layout.simple_list_item_1,
42+
topTechs);
43+
44+
lstResults.setAdapter(adapter);
45+
}
46+
});
47+
}
1748

1849
@Override
1950
public boolean onCreateOptionsMenu(Menu menu) {

0 commit comments

Comments
 (0)