我在Facebook开发者处收到以下警报:
'MyApp目前可以访问Graph API v2.2,该版本将在2017年3月27日达到其2年有效期.为确保平稳过渡,请将所有调用迁移到Graph API v2.3或更高版本.
我正在使用Facebook Android SDK 3.23.0.
我怎么知道这种Facebook Android SDK中使用的Graph API的版本?
谢谢
我有一个应用程序,其中MainActivity布局由两个TextView(tvName和tvEmail)和一个按钮(btnLogout)组成.
我有这些测试方法的功能测试(最后的代码):
我的问题是,如果我评论testLoginActivityStarts,那么testUserDetailsAreShown传递.但是,当两者都被取消注释时,两者都会失败.
java.lang.NullPointerException
at android.support.test.espresso.intent.Intents.resumedActivitiesExist(Intents.java:235)
at android.support.test.espresso.intent.Intents.intended(Intents.java:184)
at android.support.test.espresso.intent.Intents.intended(Intents.java:169)
at net.example.login.MainActivityTest.testLoginActivityStarts(MainActivityTest.java:46)
Run Code Online (Sandbox Code Playgroud)
和
android.support.test.espresso.NoMatchingViewException: No views in hierarchy found matching: with id: net.example.login:id/tvName
Run Code Online (Sandbox Code Playgroud)
我认为这是因为testLoginActivityStarts在testUserDetailsAreShown之前执行,并且当testUserDetailsAreShown正在执行时,加载的活动不是MainActivity,而是LoginActivity.
谁能帮我这个?我需要让两个测试通过.我相信他们应该通过.
这里测试代码:
public class MainActivityTest extends ActivityInstrumentationTestCase2<MainActivity> {
private String USER_NAME = "UserName";
private String USER_EMAIL = "UserEmail";
public MainActivityTest(){
super(MainActivity.class);
}
public void testUserDetailsAreShown() {
onView(withId(R.id.tvName)).check(matches(withText(USER_NAME)));
onView(withId(R.id.tvEmail)).check(matches(withText(USER_EMAIL)));
}
public void testLoginActivityStarts() {
onView(withId(R.id.btnLogout)).perform(click());
intended(hasComponent(LoginActivity.class.getName()));
}
}
Run Code Online (Sandbox Code Playgroud) 我不确定在Android中开发界面的最佳方法是什么.通过将内联属性移动到样式文件来清理布局文件是否更好?据我所知,在HTML中最好在HTML中使用类和ID,并在style.css文件中使用它们.安卓怎么样?