我想在一个Android应用程序中集成twitter,并找到了许多教程.实施了其中2个.但是在实现之后,当运行应用程序时,我才知道他们使用旧版本的twitter4J库.
虽然有很多其他的教程可用,但没有一个是最新的.只有2-3个月大.我需要一个使用最新twitter4J库版本的教程或示例,即twitter4j-core-3.0.3.
我的主要目的是允许用户tweets在他/她的帐户上发布.但同样,如果用户没有登录,我首先需要请求凭据.此外,如果用户点击logout按钮,那么我需要一些方法来记录用户.
我正在尝试实现工具栏和用户图像动画,就像在Twitter的用户配置文件中使用的那样.
我尝试了很多东西,但我无法快速将屏幕顶部的折叠工具栏固定在展开时的一些背景上,并使用户图像首先位于工具栏上方然后缩小并向下移动滚动时的工具栏.
twitter如何在用户个人资料图片中产生流畅的效果?他们如何首先在工具栏前面放置这个图像,然后滚动后面并在工具栏下方实现平滑效果?
我尝试了以下所有方案:
以前的方案都不适合我.
XML层次结构:
<android.support.design.widget.CoordinatorLayout>
<android.support.design.widget.AppBarLayout>
<android.support.design.widget.CollapsingToolbarLayout>
<LinearLayout>
<!--Some TextViews and ImageViews-->
</LinearLayout>
<ImageView src="My User profile Img"/> <!--Image first above toolbar and when toolbar is collapsing scale down and then go below toolbar-->
<ImageView src="My background" app:layout_collapseMode="parallax" app:layout_collapseParallaxMultiplier="0.8"/>
<android.support.v7.widget.Toolbar app:layout_collapseMode="pin"/>
</android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>
<!--Second Part, where the ViewPager should be pinned below the Toolbar-->
<NestedScrollView app:layout_behavior="@string/appbar_scrolling_view_behavior">
<LinearLayout>
<android.support.design.widget.TabLayout/>
<android.support.v4.view.ViewPager/>
</LinearLayout>
</NestedScrollView>
</android.support.design.widget.CoordinatorLayout>
Run Code Online (Sandbox Code Playgroud)
附上您可以看到Twitter对用户个人资料活动的影响.
android android-animation android-twitter android-toolbar android-coordinatorlayout
我正试图在Twitter上发布推文.现在,我已经在dev.twitter上创建了一个应用程序,并从此链接下载了示例代码,并使用我的应用程序密钥更新了这两个密钥.
现在我运行代码验证帐户,然后我发推文,这条推文包括图像和文本,两个图像都在URL上,如示例代码中所定义.现在我第一次向我显示图像和文本已成功上传,但当我再次尝试推文时,它给出了403状态更新错误.
为此,我更改了文本消息"状态文本"和图像URL,但它仍然给我"403状态"更新错误.我有与示例代码中编写的相同的代码,只更改了密钥.
这是我的Logcat:
10-04 11:26:25.015: W/System.err(22822): 403:The request is understood, but it has been refused. An accompanying error message will explain why. This code is used when requests are being denied due to update limits (https://support.twitter.com/articles/15364-about-twitter-limits-update-api-dm-and-following).
10-04 11:26:25.015: W/System.err(22822): message - Error creating status.
10-04 11:26:25.015: W/System.err(22822): code - 189
10-04 11:26:25.025: W/System.err(22822): Relevant discussions can be found on the Internet at:
10-04 11:26:25.025: W/System.err(22822): http://www.google.co.jp/search?q=b2b52c28 or
10-04 11:26:25.025: W/System.err(22822): http://www.google.co.jp/search?q=11331d43
10-04 11:26:25.025: W/System.err(22822): TwitterException{exceptionCode=[b2b52c28-11331d43], statusCode=403, …Run Code Online (Sandbox Code Playgroud) 我正在开发的应用程序启动官方Twitter应用程序新帖子屏幕,以便用户可以在意图中添加一些额外文本发布推文.我已经很好地工作了,但是如果用户没有使用Twitter应用程序登录,事情会有点混乱.该应用程序启动但用户必须登录,一旦他们完成了正常的推特屏幕出现,如果他们使用后退按钮返回我的应用程序,新的帖子屏幕实际上显示在回到Twitter提供屏幕后.
在尝试运行意图之前,有什么方法可以检查用户是否实际登录了Twitter应用程序?
到目前为止我在stackoverflow帖子中搜索了,我可以直接将文本分享给twitter,而不显示分享的弹出对话框.这意味着当我点击按钮时,它会直接重定向到Twitter应用程序并显示文本.
我唯一的问题是我必须直接与Twitter分享http图像.
下面我发布了我到目前为止所尝试的代码:
UsersAdapter.java:
// Create intent using ACTION_VIEW and a normal Twitter url:
String tweetUrl = String.format("https://twitter.com/intent/tweet?text=%s&url=%s",
urlEncode(strShareText),
urlEncode(strShareImageUrl));
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(tweetUrl));
// Narrow down to official Twitter app, if available:
List<ResolveInfo> matches = context.getPackageManager().queryIntentActivities(intent, 0);
for (ResolveInfo info : matches) {
if (info.activityInfo.packageName.toLowerCase().startsWith("com.twitter")) {
intent.setPackage(info.activityInfo.packageName);
}
}
context.startActivity(intent);
Run Code Online (Sandbox Code Playgroud)
在上面的代码中,文本在twitter中正确显示.但是在http url中显示了图像.
任何人都知道如何直接分享图像到Twitter应用程序而不显示链接.
我的应用程序花了很多时间启动First Activity屏幕.它会长时间显示白屏.甚至在杀死我的应用程序和访问后.
我使用的是Java 8和Android Studio 2.1.1,Gradle版本为com.android.tools.build:gradle:2.1.0
performance android android-twitter android-studio android-gradle-plugin
我正在尝试Android Twitter oAuth Connect 教程中的代码,并且成功运行。我试图将 twitter 授权页面更改为在 WebView 而不是 Web 浏览器中运行,但 WebView 似乎无法加载这种格式的 url,这oauth://twittersample是返回到我的应用程序的链接。成功授权后,webview 应该关闭并成功返回到我的应用程序。
有一个错误说“oauth://twittersample?oauth_token=.. 上的网页可能暂时关闭,或者它可能已永久移动到新的网址”。我该怎么办?
这是我的 onCreate 中的 WebView 的片段
WebView myWebView = (WebView)findViewById(R.id.myWebView);
myWebView.setWebViewClient(new WebViewClient()
{
@Override
public boolean shouldOverrideUrlLoading(WebView webView, String url)
{
if (url != null && url.startsWith("oauth://twittersample"))
//handleTwitterCallback(url);
{
System.out.println("TWEET TWEET TWEET");
webView.loadUrl(url);
return true;
}
else
return false;
}
});
Run Code Online (Sandbox Code Playgroud)
这是我的 Twitter java 类TWITTER CONNECT CLASS的链接 这是我的清单
<activity android:name="com.test.settings.ShareSettings" android:label="ShareSettings" android:screenOrientation="portrait" android:configChanges="orientation|keyboardHidden">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category …Run Code Online (Sandbox Code Playgroud) 我已经搜索了很多,但无法找到解决方案.我想在我的Android应用程序中集成twitter.它在模拟器上工作正常,但在蜂窝和更高的设备上表现不佳.下面,我用代码附加了log cat错误.
01-14 11:56:31.226: W/System.err(3649): android.os.NetworkOnMainThreadException
01-14 11:56:31.230: W/System.err(3649): at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1099)
01-14 11:56:31.230: W/System.err(3649): at java.net.InetAddress.lookupHostByName(InetAddress.java:391)
01-14 11:56:31.230: W/System.err(3649): at java.net.InetAddress.getAllByNameImpl(InetAddress.java:242)
01-14 11:56:31.230: W/System.err(3649): at java.net.InetAddress.getAllByName(InetAddress.java:220)
01-14 11:56:31.230: W/System.err(3649): at libcore.net.http.HttpConnection.<init>(HttpConnection.java:71)
01-14 11:56:31.230: W/System.err(3649): at libcore.net.http.HttpConnection.<init>(HttpConnection.java:50)
01-14 11:56:31.230: W/System.err(3649): at libcore.net.http.HttpConnection$Address.connect(HttpConnection.java:351)
01-14 11:56:31.230: W/System.err(3649): at libcore.net.http.HttpConnectionPool.get(HttpConnectionPool.java:86)
01-14 11:56:31.230: W/System.err(3649): at libcore.net.http.HttpConnection.connect(HttpConnection.java:128)
01-14 11:56:31.230: W/System.err(3649): at libcore.net.http.HttpEngine.openSocketConnection(HttpEngine.java:308)
01-14 11:56:31.230: W/System.err(3649): at libcore.net.http.HttpEngine.connect(HttpEngine.java:303)
01-14 11:56:31.230: W/System.err(3649): at libcore.net.http.HttpEngine.sendSocketRequest(HttpEngine.java:282)
01-14 11:56:31.234: W/System.err(3649): at libcore.net.http.HttpEngine.sendRequest(HttpEngine.java:232)
01-14 11:56:31.234: W/System.err(3649): at libcore.net.http.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:273)
01-14 11:56:31.234: W/System.err(3649): at …Run Code Online (Sandbox Code Playgroud) 我正在使用twitter4j.jar在twitter上发布消息.但是当我在twitter上发帖子时,我的log-cat显示如下错误.我怎么能解决这个问题.请问任何人可以帮助我吗?
OAuth - Error sending to Twitter
410:
Relevant discussions can be on the Internet at:
http://www.google.co.jp/search?q=15bb6564 or http://www.google.co.jp/search?q=010f3e5b
TwitterException{exceptionCode=[15bb6564-010f3e5b], statusCode=410, retryAfter=0, rateLimitStatus=null, version=2.1.11}
at twitter4j.internal.http.HttpClientImpl.request(HttpClientImpl.java:199)
at twitter4j.internal.http.HttpClientWrapper.request(HttpClientWrapper.java:75)
at twitter4j.internal.http.HttpClientWrapper.post(HttpClientWrapper.java:112)
at twitter4j.Twitter.updateStatus(Twitter.java:593)
at com.android.abchealthgroup.facebook_twitter_post.TwitterUtils.sendTweet(TwitterUtils.java:40)
at com.android.abchealthgroup.facebook_twitter_post.PrepareRequestTokenActivity$RetrieveAccessTokenTask.executeAfterAccessTokenRetrieval(PrepareRequestTokenActivity.java:149)
at com.android.abchealthgroup.facebook_twitter_post.PrepareRequestTokenActivity$RetrieveAccessTokenTask.doInBackground(PrepareRequestTokenActivity.java:134)
at com.android.abchealthgroup.facebook_twitter_post.PrepareRequestTokenActivity$RetrieveAccessTokenTask.doInBackground(PrepareRequestTokenActivity.java:1)
Run Code Online (Sandbox Code Playgroud)
提前致谢.
我正在尝试将twitter登录集成到我的应用程序中,但是还没有成功.
https://dev.twitter.com/twitter-kit/android/twitter-login
在上面的链接中,它要求我们安装Twitter Core库
dependencies {
compile('com.twitter.sdk.android:twitter-core:1.3.1@aar') {
transitive = true;
}
}
Run Code Online (Sandbox Code Playgroud)
但是,此库未下载.我总是抛出一个错误
Failed to resolve: com.twitter.sdk.android:twitter-core:1.3.1
Run Code Online (Sandbox Code Playgroud)
我该怎么办?
我希望我的应用程序能够通过Facebook或Twitter或Gmail登录.我的应用程序不会在相应的帐户上发布,只是我的应用程序的授权或用户创建方式.
有没有任何简单的库可以实现这一点,没有SDK或复杂的配置.
任何建议或示例都会非常有用.
android android-twitter android-authenticator android-facebook
可能重复:
发布更新的Twitter API速率限制
我通过集成"httpclient-4.0.1.jar","signpost-commonhttp4-1.2.1.1.jar","signpost-core-1.2.1.1.jar","twitter4j-core-2.1"在我的应用程序中集成了twitter. 11.jar"文件..
代码是:
public class AndroidTwitterSample extends Activity {
private SharedPreferences prefs;
private final Handler mTwitterHandler = new Handler();
private TextView loginStatus;
String message="Hii";
final Runnable mUpdateTwitterNotification = new Runnable() {
public void run() {
Toast.makeText(getBaseContext(), "Tweet sent !", Toast.LENGTH_LONG).show();
}
};
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
this.prefs = PreferenceManager.getDefaultSharedPreferences(this);
loginStatus = (TextView)findViewById(R.id.login_status);
Button tweet = (Button) findViewById(R.id.btn_tweet);
Button clearCredentials = (Button) findViewById(R.id.btn_clear_credentials);
tweet.setOnClickListener(new View.OnClickListener() {
/**
* Send a tweet. If the user …Run Code Online (Sandbox Code Playgroud)